Back to Multiple platform build/check report for BioC 3.20:   simplified   long
ABCDEFGHIJKL[M]NOPQRSTUVWXYZ

This page was generated on 2024-11-20 12:07 -0500 (Wed, 20 Nov 2024).

HostnameOSArch (*)R versionInstalled pkgs
teran2Linux (Ubuntu 24.04.1 LTS)x86_644.4.2 (2024-10-31) -- "Pile of Leaves" 4481
nebbiolo2Linux (Ubuntu 24.04.1 LTS)x86_644.4.2 (2024-10-31) -- "Pile of Leaves" 4479
palomino8Windows Server 2022 Datacenterx644.4.2 (2024-10-31 ucrt) -- "Pile of Leaves" 4359
lconwaymacOS 12.7.1 Montereyx86_644.4.1 (2024-06-14) -- "Race for Your Life" 4539
kunpeng2Linux (openEuler 22.03 LTS-SP1)aarch644.4.1 (2024-06-14) -- "Race for Your Life" 4493
Click on any hostname to see more info about the system (e.g. compilers)      (*) as reported by 'uname -p', except on Windows and Mac OS X

Package 1166/2289HostnameOS / ArchINSTALLBUILDCHECKBUILD BIN
matter 2.8.0  (landing page)
Kylie A. Bemis
Snapshot Date: 2024-11-19 13:40 -0500 (Tue, 19 Nov 2024)
git_url: https://git.bioconductor.org/packages/matter
git_branch: RELEASE_3_20
git_last_commit: 09a4744
git_last_commit_date: 2024-10-29 10:14:56 -0500 (Tue, 29 Oct 2024)
teran2Linux (Ubuntu 24.04.1 LTS) / x86_64  OK    OK    OK  UNNEEDED, same version is already published
nebbiolo2Linux (Ubuntu 24.04.1 LTS) / x86_64  OK    OK    OK  
palomino8Windows Server 2022 Datacenter / x64  OK    OK    OK    OK  UNNEEDED, same version is already published
lconwaymacOS 12.7.1 Monterey / x86_64  OK    OK    ERROR    OK  
kunpeng2Linux (openEuler 22.03 LTS-SP1) / aarch64  OK    OK    OK  


CHECK results for matter on kunpeng2

To the developers/maintainers of the matter package:
- Allow up to 24 hours (and sometimes 48 hours) for your latest push to git@git.bioconductor.org:packages/matter.git to reflect on this report. See Troubleshooting Build Report for more information.
- Use the following Renviron settings to reproduce errors and warnings.
- If 'R CMD check' started to fail recently on the Linux builder(s) over a missing dependency, add the missing dependency to 'Suggests:' in your DESCRIPTION file. See Renviron.bioc for more information.
- See Martin Grigorov's blog post for how to debug Linux ARM64 related issues on a x86_64 host.

raw results


Summary

Package: matter
Version: 2.8.0
Command: /home/biocbuild/R/R/bin/R CMD check --install=check:matter.install-out.txt --library=/home/biocbuild/R/R/site-library --no-vignettes --timings matter_2.8.0.tar.gz
StartedAt: 2024-11-20 09:29:55 -0000 (Wed, 20 Nov 2024)
EndedAt: 2024-11-20 09:34:36 -0000 (Wed, 20 Nov 2024)
EllapsedTime: 281.5 seconds
RetCode: 0
Status:   OK  
CheckDir: matter.Rcheck
Warnings: 0

Command output

##############################################################################
##############################################################################
###
### Running command:
###
###   /home/biocbuild/R/R/bin/R CMD check --install=check:matter.install-out.txt --library=/home/biocbuild/R/R/site-library --no-vignettes --timings matter_2.8.0.tar.gz
###
##############################################################################
##############################################################################


* using log directory ‘/home/biocbuild/bbs-3.20-bioc/meat/matter.Rcheck’
* using R version 4.4.1 (2024-06-14)
* using platform: aarch64-unknown-linux-gnu
* R was compiled by
    gcc (GCC) 12.2.1 20220819 (openEuler 12.2.1-14)
    GNU Fortran (GCC) 10.3.1
* running under: openEuler 22.03 (LTS-SP1)
* using session charset: UTF-8
* using option ‘--no-vignettes’
* checking for file ‘matter/DESCRIPTION’ ... OK
* checking extension type ... Package
* this is package ‘matter’ version ‘2.8.0’
* checking package namespace information ... OK
* checking package dependencies ... OK
* checking if this is a source package ... OK
* checking if there is a namespace ... OK
* checking for hidden files and directories ... OK
* checking for portable file names ... OK
* checking for sufficient/correct file permissions ... OK
* checking whether package ‘matter’ can be installed ... OK
* used C++ compiler: ‘g++ (conda-forge gcc 14.2.0-1) 14.2.0’
* checking installed package size ... NOTE
  installed size is  5.7Mb
  sub-directories of 1Mb or more:
    R      2.2Mb
    libs   3.0Mb
* checking package directory ... OK
* checking ‘build’ directory ... OK
* checking DESCRIPTION meta-information ... OK
* checking top-level files ... OK
* checking for left-over files ... OK
* checking index information ... OK
* checking package subdirectories ... OK
* checking code files for non-ASCII characters ... OK
* checking R files for syntax errors ... OK
* checking whether the package can be loaded ... OK
* checking whether the package can be loaded with stated dependencies ... OK
* checking whether the package can be unloaded cleanly ... OK
* checking whether the namespace can be loaded with stated dependencies ... OK
* checking whether the namespace can be unloaded cleanly ... OK
* checking loading without being on the library search path ... OK
* checking whether startup messages can be suppressed ... OK
* checking dependencies in R code ... OK
* checking S3 generic/method consistency ... OK
* checking replacement functions ... OK
* checking foreign function calls ... OK
* checking R code for possible problems ... OK
* checking Rd files ... OK
* checking Rd metadata ... OK
* checking Rd cross-references ... OK
* checking for missing documentation entries ... OK
* checking for code/documentation mismatches ... OK
* checking Rd \usage sections ... OK
* checking Rd contents ... OK
* checking for unstated dependencies in examples ... OK
* checking line endings in C/C++/Fortran sources/headers ... OK
* checking compiled code ... NOTE
Note: information on .o files is not available
* checking files in ‘vignettes’ ... OK
* checking examples ... OK
* checking for unstated dependencies in ‘tests’ ... OK
* checking tests ...
  Running ‘testthat.R’
 OK
* checking for unstated dependencies in vignettes ... OK
* checking package vignettes ... OK
* checking running R code from vignettes ... SKIPPED
* checking re-building of vignette outputs ... SKIPPED
* checking PDF version of manual ... OK
* DONE

Status: 2 NOTEs
See
  ‘/home/biocbuild/bbs-3.20-bioc/meat/matter.Rcheck/00check.log’
for details.


Installation output

matter.Rcheck/00install.out

##############################################################################
##############################################################################
###
### Running command:
###
###   /home/biocbuild/R/R/bin/R CMD INSTALL matter
###
##############################################################################
##############################################################################


* installing to library ‘/home/biocbuild/R/R-4.4.1/site-library’
* installing *source* package ‘matter’ ...
** using staged installation
** libs
using C++ compiler: ‘g++ (conda-forge gcc 14.2.0-1) 14.2.0’
g++ -std=gnu++17 -I"/home/biocbuild/R/R-4.4.1/include" -DNDEBUG  -I'/home/biocbuild/R/R-4.4.1/site-library/BH/include' -I/usr/local/include    -fPIC  -g -O2  -Wall  -c altrep.cpp -o altrep.o
In file included from atoms.h:9,
                 from matter.h:5,
                 from altrep.cpp:3:
resources.h: In member function 'void SharedMemorySource::resize(size_t)':
resources.h:189:51: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         if ( shared_memory_size() < size )
      |                              ~~~~~~~~~~~~~~~~~~~~~^~~~~~
atoms.h: In member function 'SEXPREC* Atoms::regroup_index(size_t)':
atoms.h:728:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  728 |                         for ( index_t i = 0; i < ngroups; i++ )
      |                                              ~~^~~~~~~~~
atoms.h:738:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  738 |                         for ( index_t i = 0; i < ngroups; i++ )
      |                                              ~~^~~~~~~~~
matter.h: In member function 'void MatterArray::set_region(index_t, size_t, SEXP)':
matter.h:178:35: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  178 |                         if ( size > XLENGTH(value) && stride != 0 ) {
      |                              ~~~~~^~~~~~~~~~~~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:153:16:   required from here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:157:16:   required from here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:165:16:   required from here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:184:16:   required from here
  184 |                                         set_region(i, size, RAW(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:187:16:   required from here
  187 |                                         set_region(i, size, LOGICAL(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:193:16:   required from here
  193 |                                         set_region(i, size, REAL(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
In file included from atoms.h:11:
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = int; Tlen = int; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:572:22:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = int; SEXP = SEXPREC*]'
  572 |                         recode_drle<T,int>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  573 |                                 DataPtr<T>(deltas), INTEGER(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:595:22:   required from here
  595 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = int; Tlen = double; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:576:25:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = int; SEXP = SEXPREC*]'
  576 |                         recode_drle<T,double>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                                 DataPtr<T>(deltas), REAL(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:595:22:   required from here
  595 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = double; Tlen = int; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:572:22:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = double; SEXP = SEXPREC*]'
  572 |                         recode_drle<T,int>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  573 |                                 DataPtr<T>(deltas), INTEGER(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:599:22:   required from here
  599 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = double; Tlen = double; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:576:25:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = double; SEXP = SEXPREC*]'
  576 |                         recode_drle<T,double>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                                 DataPtr<T>(deltas), REAL(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:599:22:   required from here
  599 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
In file included from matter.h:6:
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:153:16:   required from here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:157:16:   required from here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:165:16:   required from here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
In file included from altrep.cpp:2:
matterDefines.h: In instantiation of 'size_t ArrayInterface::transpose_index(T*, SEXP, bool) [with T = long int; size_t = long unsigned int; SEXP = SEXPREC*]':
matter.h:116:20:   required from 'size_t MatterArray::get_elements(SEXP, T*, int) [with T = unsigned char; size_t = long unsigned int; SEXP = SEXPREC*]'
  116 |                                 transpose_index(tindx, indx, true);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
matter.h:209:18:   required from here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ~~~~~~~~~~~~^~~~~~~~~~~~~~
matterDefines.h:379:47: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  379 |                         for ( size_t j = 0; j < XLENGTH(indx); j++ )
      |                                             ~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = char; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = char; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = unsigned char; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = unsigned char; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = short int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = short int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = long int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = long int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = float; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = float; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = double; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = double; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = char; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = char; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = unsigned char; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = unsigned char; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = short int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = short int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = long int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = long int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = float; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = float; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = float; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = double; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = double; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
g++ -std=gnu++17 -I"/home/biocbuild/R/R-4.4.1/include" -DNDEBUG  -I'/home/biocbuild/R/R-4.4.1/site-library/BH/include' -I/usr/local/include    -fPIC  -g -O2  -Wall  -c init.cpp -o init.o
In file included from atoms.h:9,
                 from matterExports.h:5,
                 from init.cpp:4:
resources.h: In member function 'void SharedMemorySource::resize(size_t)':
resources.h:189:51: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         if ( shared_memory_size() < size )
      |                              ~~~~~~~~~~~~~~~~~~~~~^~~~~~
atoms.h: In member function 'SEXPREC* Atoms::regroup_index(size_t)':
atoms.h:728:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  728 |                         for ( index_t i = 0; i < ngroups; i++ )
      |                                              ~~^~~~~~~~~
atoms.h:738:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  738 |                         for ( index_t i = 0; i < ngroups; i++ )
      |                                              ~~^~~~~~~~~
In file included from matterExports.h:6:
matter.h: In member function 'void MatterArray::set_region(index_t, size_t, SEXP)':
matter.h:178:35: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  178 |                         if ( size > XLENGTH(value) && stride != 0 ) {
      |                              ~~~~~^~~~~~~~~~~~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:153:16:   required from here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:157:16:   required from here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:165:16:   required from here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:184:16:   required from here
  184 |                                         set_region(i, size, RAW(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:187:16:   required from here
  187 |                                         set_region(i, size, LOGICAL(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:193:16:   required from here
  193 |                                         set_region(i, size, REAL(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
In file included from matterExports.h:4:
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = int; Tlen = int; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:572:22:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = int; SEXP = SEXPREC*]'
  572 |                         recode_drle<T,int>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  573 |                                 DataPtr<T>(deltas), INTEGER(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:595:22:   required from here
  595 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = int; Tlen = double; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:576:25:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = int; SEXP = SEXPREC*]'
  576 |                         recode_drle<T,double>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                                 DataPtr<T>(deltas), REAL(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:595:22:   required from here
  595 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = double; Tlen = int; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:572:22:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = double; SEXP = SEXPREC*]'
  572 |                         recode_drle<T,int>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  573 |                                 DataPtr<T>(deltas), INTEGER(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:599:22:   required from here
  599 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = double; Tlen = double; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:576:25:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = double; SEXP = SEXPREC*]'
  576 |                         recode_drle<T,double>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                                 DataPtr<T>(deltas), REAL(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:599:22:   required from here
  599 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
In file included from matter.h:6:
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:153:16:   required from here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:157:16:   required from here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:165:16:   required from here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
In file included from drle.h:4:
matterDefines.h: In instantiation of 'size_t ArrayInterface::transpose_index(T*, SEXP, bool) [with T = long int; size_t = long unsigned int; SEXP = SEXPREC*]':
matter.h:116:20:   required from 'size_t MatterArray::get_elements(SEXP, T*, int) [with T = unsigned char; size_t = long unsigned int; SEXP = SEXPREC*]'
  116 |                                 transpose_index(tindx, indx, true);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
matter.h:209:18:   required from here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ~~~~~~~~~~~~^~~~~~~~~~~~~~
matterDefines.h:379:47: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  379 |                         for ( size_t j = 0; j < XLENGTH(indx); j++ )
      |                                             ~~^~~~~~~~~~~~~~~
In file included from matterExports.h:7:
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:420:33:   required from here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:481:29:   required from here
  481 |                                         data()->get_region<int>(LOGICAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:489:32:   required from here
  489 |                                         data()->get_region<double>(REAL(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:525:29:   required from here
  525 |                                         data()->set_region<int>(LOGICAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:531:32:   required from here
  531 |                                         data()->set_region<double>(REAL(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
sparse.h: In instantiation of 'void SparseArray::copy_domain(index_t, size_t, T*) [with T = int; index_t = long int; size_t = long unsigned int]':
sparse.h:318:22:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  318 |                                 copy_domain<Tind>(i, size, subscripts);
      |                                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:187:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  187 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
In file included from sparse.h:5:
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]':
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
sparse.h: In instantiation of 'void SparseArray::copy_domain(index_t, size_t, T*) [with T = double; index_t = long int; size_t = long unsigned int]':
sparse.h:318:22:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  318 |                                 copy_domain<Tind>(i, size, subscripts);
      |                                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:187:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  187 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]':
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]':
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]':
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:420:33:   required from here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = char; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = char; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = unsigned char; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = unsigned char; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = short int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = short int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = long int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = long int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = float; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = float; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = double; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = double; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:477:31:   required from here
  477 |                                         data()->get_region<Rbyte>(RAW(x), 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = char; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = char; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = unsigned char; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = unsigned char; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = short int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = short int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = long int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = long int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = float; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = float; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = float; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = double; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = double; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:522:31:   required from here
  522 |                                         data()->set_region<Rbyte>(RAW(value), 0, dim(i), i, stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
In file included from signal.h:6:
search.h: In instantiation of 'index_t binary_search(T, T*, size_t, size_t, double, int, int, bool, bool) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1600:19:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1600 |         i = binary_search(xi, x, start, end,
      |             ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
 1601 |                 tol, tol_ref, NA_INTEGER);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
search.h:421:16: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  421 |         if ( j == end )
      |              ~~^~~~~~
search.h: In instantiation of 'index_t binary_search(T, T*, size_t, size_t, double, int, int, bool, bool) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1600:19:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1600 |         i = binary_search(xi, x, start, end,
      |             ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
 1601 |                 tol, tol_ref, NA_INTEGER);
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
search.h:421:16: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  421 |         if ( j == end )
      |              ~~^~~~~~
signal.h: In instantiation of 'index_t peak_lbound(T*, index_t, size_t) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1575:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1575 |                         lower = peak_lbound(y, i, n);
      |                                 ~~~~~~~~~~~^~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1249:43: note: in expansion of macro 'norm_ind'
 1249 |                         index_t lwindow = norm_ind(cand - 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'index_t peak_rbound(T*, index_t, size_t) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1576:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1576 |                         upper = peak_rbound(y, i, n);
      |                                 ~~~~~~~~~~~^~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1276:39: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1276 |         for ( index_t i = peak + 1; i < n; i++ )
      |                                     ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1287:43: note: in expansion of macro 'norm_ind'
 1287 |                         index_t rwindow = norm_ind(cand + 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'index_t peak_lbound(T*, index_t, size_t) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1575:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]'
 1575 |                         lower = peak_lbound(y, i, n);
      |                                 ~~~~~~~~~~~^~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1249:43: note: in expansion of macro 'norm_ind'
 1249 |                         index_t lwindow = norm_ind(cand - 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'index_t peak_rbound(T*, index_t, size_t) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1576:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]'
 1576 |                         upper = peak_rbound(y, i, n);
      |                                 ~~~~~~~~~~~^~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1276:39: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1276 |         for ( index_t i = peak + 1; i < n; i++ )
      |                                     ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1287:43: note: in expansion of macro 'norm_ind'
 1287 |                         index_t rwindow = norm_ind(cand + 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:420:33:   required from here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:420:33:   required from here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'index_t wupper(T, T*, index_t, size_t, double, int) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1436:24:   required from 'double interp1_stat(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1436 |         index_t upper = wupper(xi, x, i, n, tol, tol_ref);
      |                         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1572:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1572 |                         return interp1_stat(xi, x, y, i, n, tol, tol_ref, interp);
      |                                ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1425:19: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1425 |         while ( i < n - 1 && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                 ~~^~~~~~~
signal.h: In instantiation of 'index_t wupper(T, T*, index_t, size_t, double, int) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1436:24:   required from 'double interp1_stat(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1436 |         index_t upper = wupper(xi, x, i, n, tol, tol_ref);
      |                         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1572:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1572 |                         return interp1_stat(xi, x, y, i, n, tol, tol_ref, interp);
      |                                ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1425:19: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1425 |         while ( i < n - 1 && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                 ~~^~~~~~~
In file included from init.cpp:5:
altrep.h: At global scope:
altrep.h:17:25: warning: 'matter_altstring' defined but not used [-Wunused-variable]
   17 | static R_altrep_class_t matter_altstring;
      |                         ^~~~~~~~~~~~~~~~
altrep.h:16:25: warning: 'matter_altreal' defined but not used [-Wunused-variable]
   16 | static R_altrep_class_t matter_altreal;
      |                         ^~~~~~~~~~~~~~
altrep.h:15:25: warning: 'matter_altinteger' defined but not used [-Wunused-variable]
   15 | static R_altrep_class_t matter_altinteger;
      |                         ^~~~~~~~~~~~~~~~~
altrep.h:14:25: warning: 'matter_altlogical' defined but not used [-Wunused-variable]
   14 | static R_altrep_class_t matter_altlogical;
      |                         ^~~~~~~~~~~~~~~~~
altrep.h:13:25: warning: 'matter_altraw' defined but not used [-Wunused-variable]
   13 | static R_altrep_class_t matter_altraw;
      |                         ^~~~~~~~~~~~~
g++ -std=gnu++17 -I"/home/biocbuild/R/R-4.4.1/include" -DNDEBUG  -I'/home/biocbuild/R/R-4.4.1/site-library/BH/include' -I/usr/local/include    -fPIC  -g -O2  -Wall  -c matterExports.cpp -o matterExports.o
In file included from atoms.h:9,
                 from matterExports.h:5,
                 from matterExports.cpp:2:
resources.h: In member function 'void SharedMemorySource::resize(size_t)':
resources.h:189:51: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         if ( shared_memory_size() < size )
      |                              ~~~~~~~~~~~~~~~~~~~~~^~~~~~
atoms.h: In member function 'SEXPREC* Atoms::regroup_index(size_t)':
atoms.h:728:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  728 |                         for ( index_t i = 0; i < ngroups; i++ )
      |                                              ~~^~~~~~~~~
atoms.h:738:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  738 |                         for ( index_t i = 0; i < ngroups; i++ )
      |                                              ~~^~~~~~~~~
In file included from matterExports.h:6:
matter.h: In member function 'void MatterArray::set_region(index_t, size_t, SEXP)':
matter.h:178:35: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  178 |                         if ( size > XLENGTH(value) && stride != 0 ) {
      |                              ~~~~~^~~~~~~~~~~~~~~~
matterExports.cpp: In function 'SEXPREC* kdSearch(SEXP, SEXP, SEXP, SEXP, SEXP, SEXP, SEXP)':
matterExports.cpp:219:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  219 |         for ( index_t i = 0; i < nx; i++ )
      |                              ~~^~~~
matterExports.cpp:226:56: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  226 |                                 for ( index_t j = 0; j < k; j++ )
      |                                                      ~~^~~
matterExports.cpp:236:56: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  236 |                                 for ( index_t j = 0; j < k; j++ )
      |                                                      ~~^~~
matterExports.cpp:247:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  247 |                 for ( index_t j = 0; j < nnb; j++ )
      |                                      ~~^~~~~
matterExports.cpp: In function 'SEXPREC* rowDistAt(SEXP, SEXP, SEXP, SEXP, SEXP, SEXP, SEXP)':
matterExports.cpp:369:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  369 |         for ( index_t i = 0; i < nout; i++ )
      |                              ~~^~~~~~
matterExports.cpp: In function 'SEXPREC* colDistAt(SEXP, SEXP, SEXP, SEXP, SEXP, SEXP, SEXP)':
matterExports.cpp:413:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  413 |         for ( index_t i = 0; i < nout; i++ )
      |                              ~~^~~~~~
matterExports.cpp: In function 'SEXPREC* warpCOW(SEXP, SEXP, SEXP, SEXP, SEXP, SEXP, SEXP, SEXP)':
matterExports.cpp:881:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  881 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:153:16:   required from here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:157:16:   required from here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:165:16:   required from here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
matter.h:73:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   73 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:184:16:   required from here
  184 |                                         set_region(i, size, RAW(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:187:16:   required from here
  187 |                                         set_region(i, size, LOGICAL(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
matter.h: In instantiation of 'size_t MatterArray::set_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:193:16:   required from here
  193 |                                         set_region(i, size, REAL(value), stride);
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:96:40: warning: comparison of integer expressions of different signedness: 'R_xlen_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |                         size = len - i > size ? size : len - i;
      |                                ~~~~~~~~^~~~~~
In file included from signal.h:6,
                 from sparse.h:5,
                 from matterExports.h:7:
search.h: In instantiation of 'index_t kd_tree_build(T*, size_t, size_t, int*, int*) [with T = int; index_t = long int; size_t = long unsigned int]':
matterExports.cpp:192:24:   required from here
  192 |                         root = kd_tree_build(INTEGER(x), k, n,
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
  193 |                                 INTEGER(left_child), INTEGER(right_child));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:503:22: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  503 |         if ( mid + 1 < n )
      |              ~~~~~~~~^~~
search.h:510:46: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  510 |                 for ( index_t i = mid + 1; i < n; i++ )
      |                                            ~~^~~
search.h: In instantiation of 'index_t kd_tree_build(T*, size_t, size_t, int*, int*) [with T = double; index_t = long int; size_t = long unsigned int]':
matterExports.cpp:196:24:   required from here
  196 |                         root = kd_tree_build(REAL(x), k, n,
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~
  197 |                                 INTEGER(left_child), INTEGER(right_child));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:503:22: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  503 |         if ( mid + 1 < n )
      |              ~~~~~~~~^~~
search.h:510:46: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  510 |                 for ( index_t i = mid + 1; i < n; i++ )
      |                                            ~~^~~
search.h: In instantiation of 'index_t kd_tree_search(int*, T*, T*, size_t, size_t, int*, int*, size_t, double*, int, bool) [with T = int; index_t = long int; size_t = long unsigned int]':
matterExports.cpp:228:25:   required from here
  228 |                                 nnb = kd_tree_search(INTEGER(buffer), xi, INTEGER(data), k, ndata,
      |                                       ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  229 |                                         INTEGER(left_child), INTEGER(right_child), Rf_asInteger(root),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  230 |                                         REAL(tol), Rf_asInteger(tol_ref), true);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:601:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  601 |                         for ( j = 0; j < k; j++ )
      |                                      ~~^~~
search.h: In instantiation of 'index_t kd_tree_search(int*, T*, T*, size_t, size_t, int*, int*, size_t, double*, int, bool) [with T = double; index_t = long int; size_t = long unsigned int]':
matterExports.cpp:238:25:   required from here
  238 |                                 nnb = kd_tree_search(INTEGER(buffer), xi, REAL(data), k, ndata,
      |                                       ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  239 |                                         INTEGER(left_child), INTEGER(right_child), Rf_asInteger(root),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  240 |                                         REAL(tol), Rf_asInteger(tol_ref), true);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:601:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  601 |                         for ( j = 0; j < k; j++ )
      |                                      ~~^~~
search.h: In instantiation of 'void do_knn_self_search(int*, T*, size_t, size_t, int*, int*, int, int, double, bool) [with T = int; size_t = long unsigned int]':
matterExports.cpp:291:22:   required from here
  291 |                         do_knn_self_search(INTEGER(result), INTEGER(x), k, n,
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  292 |                                 INTEGER(left_child), INTEGER(right_child),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  293 |                                 Rf_asInteger(knn), Rf_asInteger(metric), Rf_asReal(p), true);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:835:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  835 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
search.h: In instantiation of 'void do_knn_self_search(int*, T*, size_t, size_t, int*, int*, int, int, double, bool) [with T = double; size_t = long unsigned int]':
matterExports.cpp:296:22:   required from here
  296 |                         do_knn_self_search(INTEGER(result), REAL(x), k, n,
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  297 |                                 INTEGER(left_child), INTEGER(right_child),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  298 |                                 Rf_asInteger(knn), Rf_asInteger(metric), Rf_asReal(p), true);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:835:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  835 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
In file included from search.h:5:
dist.h: In instantiation of 'void row_dist(T*, T*, size_t, size_t, size_t, double*, int, double, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:321:12:   required from here
  321 |                         row_dist(INTEGER(x), INTEGER(y), Rf_nrows(x), Rf_nrows(y), Rf_ncols(x),
      |                         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  322 |                                 REAL(result), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:63:34: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   63 |         for ( index_t ix = 0; ix < nx; ix++ )
      |                               ~~~^~~~
dist.h:65:42: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   65 |                 for ( index_t iy = 0; iy < ny; iy++ )
      |                                       ~~~^~~~
dist.h: In instantiation of 'void row_dist(T*, T*, size_t, size_t, size_t, double*, int, double, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:325:12:   required from here
  325 |                         row_dist(REAL(x), REAL(y), Rf_nrows(x), Rf_nrows(y), Rf_ncols(x),
      |                         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  326 |                                 REAL(result), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:63:34: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   63 |         for ( index_t ix = 0; ix < nx; ix++ )
      |                               ~~~^~~~
dist.h:65:42: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   65 |                 for ( index_t iy = 0; iy < ny; iy++ )
      |                                       ~~~^~~~
dist.h: In instantiation of 'void col_dist(T*, T*, size_t, size_t, size_t, double*, int, double, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:346:12:   required from here
  346 |                         col_dist(INTEGER(x), INTEGER(y), Rf_ncols(x), Rf_ncols(y), Rf_nrows(x),
      |                         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  347 |                                 REAL(result), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:79:34: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   79 |         for ( index_t ix = 0; ix < nx; ix++ )
      |                               ~~~^~~~
dist.h:81:42: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   81 |                 for ( index_t iy = 0; iy < ny; iy++ )
      |                                       ~~~^~~~
dist.h: In instantiation of 'void col_dist(T*, T*, size_t, size_t, size_t, double*, int, double, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:350:12:   required from here
  350 |                         col_dist(REAL(x), REAL(y), Rf_ncols(x), Rf_ncols(y), Rf_nrows(x),
      |                         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  351 |                                 REAL(result), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:79:34: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   79 |         for ( index_t ix = 0; ix < nx; ix++ )
      |                               ~~~^~~~
dist.h:81:42: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   81 |                 for ( index_t iy = 0; iy < ny; iy++ )
      |                                       ~~~^~~~
dist.h: In instantiation of 'void row_dist_at(T*, T*, int*, int*, size_t, size_t, size_t, size_t, double*, int, double, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:387:16:   required from here
  387 |                                 row_dist_at(INTEGER(x), INTEGER(y), xrows, yrows, Rf_nrows(x), Rf_nrows(y),
      |                                 ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  388 |                                         ni, Rf_ncols(x), REAL(dist), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:96:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
dist.h:102:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  102 |                 if ( indx[i] < 0 || indx[i] >= nx )
      |                                     ~~~~~~~~^~~~~
dist.h:104:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  104 |                 if ( indy[i] < 0 || indy[i] >= ny )
      |                                     ~~~~~~~~^~~~~
dist.h: In instantiation of 'void row_dist_at(T*, T*, int*, int*, size_t, size_t, size_t, size_t, double*, int, double, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:391:16:   required from here
  391 |                                 row_dist_at(REAL(x), REAL(y), xrows, yrows, Rf_nrows(x), Rf_nrows(y),
      |                                 ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  392 |                                         ni, Rf_ncols(x), REAL(dist), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:96:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   96 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
dist.h:102:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  102 |                 if ( indx[i] < 0 || indx[i] >= nx )
      |                                     ~~~~~~~~^~~~~
dist.h:104:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  104 |                 if ( indy[i] < 0 || indy[i] >= ny )
      |                                     ~~~~~~~~^~~~~
dist.h: In instantiation of 'void col_dist_at(T*, T*, int*, int*, size_t, size_t, size_t, size_t, double*, int, double, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:431:16:   required from here
  431 |                                 col_dist_at(INTEGER(x), INTEGER(y), xcols, ycols, Rf_ncols(x), Rf_ncols(y),
      |                                 ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  432 |                                         ni, Rf_nrows(x), REAL(dist), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:117:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  117 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
dist.h:123:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  123 |                 if ( indx[i] < 0 || indx[i] >= nx )
      |                                     ~~~~~~~~^~~~~
dist.h:125:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  125 |                 if ( indy[i] < 0 || indy[i] >= ny )
      |                                     ~~~~~~~~^~~~~
dist.h: In instantiation of 'void col_dist_at(T*, T*, int*, int*, size_t, size_t, size_t, size_t, double*, int, double, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:435:16:   required from here
  435 |                                 col_dist_at(REAL(x), REAL(y), xcols, ycols, Rf_ncols(x), Rf_ncols(y),
      |                                 ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  436 |                                         ni, Rf_nrows(x), REAL(dist), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:117:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  117 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
dist.h:123:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  123 |                 if ( indx[i] < 0 || indx[i] >= nx )
      |                                     ~~~~~~~~^~~~~
dist.h:125:45: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  125 |                 if ( indy[i] < 0 || indy[i] >= ny )
      |                                     ~~~~~~~~^~~~~
dist.h: In instantiation of 'index_t do_in_poly(int*, T*, size_t, T*, size_t) [with T = int; index_t = long int; size_t = long unsigned int]':
matterExports.cpp:456:14:   required from here
  456 |                         do_in_poly(LOGICAL(result), INTEGER(points), Rf_nrows(points),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  457 |                                 INTEGER(vertices), Rf_nrows(vertices));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:176:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  176 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
dist.h: In instantiation of 'index_t do_in_poly(int*, T*, size_t, T*, size_t) [with T = double; index_t = long int; size_t = long unsigned int]':
matterExports.cpp:460:14:   required from here
  460 |                         do_in_poly(LOGICAL(result), REAL(points), Rf_nrows(points),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  461 |                                 REAL(vertices), Rf_nrows(vertices));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:176:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  176 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h: In instantiation of 'void mean_filter(T*, size_t, int, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:716:15:   required from here
  716 |                         mean_filter(INTEGER(x), LENGTH(x),
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
  717 |                                 Rf_asInteger(width), REAL(result));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:294:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  294 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
In file included from drle.h:4,
                 from matterExports.h:4:
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:296:24: note: in expansion of macro 'norm_ind'
  296 |                 prev = norm_ind(i - r - 1, n);
      |                        ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:297:22: note: in expansion of macro 'norm_ind'
  297 |                 lo = norm_ind(i - r, n);
      |                      ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:298:22: note: in expansion of macro 'norm_ind'
  298 |                 hi = norm_ind(i + r, n);
      |                      ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:313:38: note: in expansion of macro 'norm_ind'
  313 |                                 ij = norm_ind(i + j, n);
      |                                      ^~~~~~~~
signal.h:329:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  329 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h: In instantiation of 'void mean_filter(T*, size_t, int, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:720:15:   required from here
  720 |                         mean_filter(REAL(x), LENGTH(x),
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
  721 |                                 Rf_asInteger(width), REAL(result));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:294:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  294 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:296:24: note: in expansion of macro 'norm_ind'
  296 |                 prev = norm_ind(i - r - 1, n);
      |                        ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:297:22: note: in expansion of macro 'norm_ind'
  297 |                 lo = norm_ind(i - r, n);
      |                      ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:298:22: note: in expansion of macro 'norm_ind'
  298 |                 hi = norm_ind(i + r, n);
      |                      ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:313:38: note: in expansion of macro 'norm_ind'
  313 |                                 ij = norm_ind(i + j, n);
      |                                      ^~~~~~~~
signal.h:329:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  329 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h: In instantiation of 'void linear_filter(T*, size_t, double*, int, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:736:17:   required from here
  736 |                         linear_filter(INTEGER(x), LENGTH(x), REAL(weights),
      |                         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  737 |                                 LENGTH(weights), REAL(result));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:342:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  342 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:353:30: note: in expansion of macro 'norm_ind'
  353 |                         ij = norm_ind(i + j, n);
      |                              ^~~~~~~~
signal.h: In instantiation of 'void linear_filter(T*, size_t, double*, int, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:740:17:   required from here
  740 |                         linear_filter(REAL(x), LENGTH(x), REAL(weights),
      |                         ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  741 |                                 LENGTH(weights), REAL(result));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:342:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  342 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:353:30: note: in expansion of macro 'norm_ind'
  353 |                         ij = norm_ind(i + j, n);
      |                              ^~~~~~~~
signal.h: In instantiation of 'void bilateral_filter(T*, size_t, int, double, double, double, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:757:20:   required from here
  757 |                         bilateral_filter(INTEGER(x), LENGTH(x), Rf_asInteger(width),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  758 |                                 Rf_asReal(sddist), Rf_asReal(sdrange),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  759 |                                 Rf_asReal(spar), REAL(result));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:381:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  381 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:396:38: note: in expansion of macro 'norm_ind'
  396 |                                 ij = norm_ind(i + j, n);
      |                                      ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:417:30: note: in expansion of macro 'norm_ind'
  417 |                         ij = norm_ind(i + j, n);
      |                              ^~~~~~~~
signal.h: In instantiation of 'void bilateral_filter(T*, size_t, int, double, double, double, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:762:20:   required from here
  762 |                         bilateral_filter(REAL(x), LENGTH(x), Rf_asInteger(width),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  763 |                                 Rf_asReal(sddist), Rf_asReal(sdrange),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  764 |                                 Rf_asReal(spar), REAL(result));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:381:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  381 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:396:38: note: in expansion of macro 'norm_ind'
  396 |                                 ij = norm_ind(i + j, n);
      |                                      ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:417:30: note: in expansion of macro 'norm_ind'
  417 |                         ij = norm_ind(i + j, n);
      |                              ^~~~~~~~
signal.h: In instantiation of 'void diffusion_filter(T*, size_t, int, double, double, int, double*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:780:20:   required from here
  780 |                         diffusion_filter(INTEGER(x), LENGTH(x), Rf_asInteger(niter),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  781 |                                 Rf_asReal(kappa), Rf_asReal(rate), Rf_asInteger(method),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  782 |                                 REAL(result));
      |                                 ~~~~~~~~~~~~~
signal.h:440:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  440 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h:446:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  446 |                 for ( index_t i = 0; i < n; i++ )
      |                                      ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:454:29: note: in expansion of macro 'norm_ind'
  454 |                         L = norm_ind(i - 1, n);
      |                             ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:455:29: note: in expansion of macro 'norm_ind'
  455 |                         R = norm_ind(i + 1, n);
      |                             ^~~~~~~~
signal.h: In instantiation of 'void diffusion_filter(T*, size_t, int, double, double, int, double*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:785:20:   required from here
  785 |                         diffusion_filter(REAL(x), LENGTH(x), Rf_asInteger(niter),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  786 |                                 Rf_asReal(kappa), Rf_asReal(rate), Rf_asInteger(method),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  787 |                                 REAL(result));
      |                                 ~~~~~~~~~~~~~
signal.h:440:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  440 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h:446:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  446 |                 for ( index_t i = 0; i < n; i++ )
      |                                      ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:454:29: note: in expansion of macro 'norm_ind'
  454 |                         L = norm_ind(i - 1, n);
      |                             ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:455:29: note: in expansion of macro 'norm_ind'
  455 |                         R = norm_ind(i + 1, n);
      |                             ^~~~~~~~
signal.h: In instantiation of 'void bin_vector(T*, int, int*, int*, int, double*, int, double) [with T = int]':
matterExports.cpp:928:14:   required from here
  928 |                         bin_vector(INTEGER(x), LENGTH(x), INTEGER(lower), INTEGER(upper),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  929 |                                 LENGTH(lower), REAL(ans), Rf_asInteger(stat), Rf_asReal(prob));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:881:31: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  881 |         for ( size_t i = 0; i < nbin; i++ )
      |                             ~~^~~~~~
signal.h: In instantiation of 'void bin_vector(T*, int, int*, int*, int, double*, int, double) [with T = double]':
matterExports.cpp:932:14:   required from here
  932 |                         bin_vector(REAL(x), LENGTH(x), INTEGER(lower), INTEGER(upper),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  933 |                                 LENGTH(lower), REAL(ans), Rf_asInteger(stat), Rf_asReal(prob));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:881:31: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
  881 |         for ( size_t i = 0; i < nbin; i++ )
      |                             ~~^~~~~~
signal.h: In instantiation of 'size_t convex_hull(T*, T*, size_t, int*, bool) [with T = int; size_t = long unsigned int]':
matterExports.cpp:1021:19:   required from here
 1021 |                         h = convex_hull(INTEGER(x), INTEGER(y), LENGTH(x),
      |                             ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1022 |                                 INTEGER(ans), Rf_asLogical(upper));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1141:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1141 |                 for ( index_t i = 0; i < n; i++ )
      |                                      ~~^~~
signal.h: In instantiation of 'size_t convex_hull(T*, T*, size_t, int*, bool) [with T = double; size_t = long unsigned int]':
matterExports.cpp:1025:19:   required from here
 1025 |                         h = convex_hull(REAL(x), REAL(y), LENGTH(x),
      |                             ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1026 |                                 INTEGER(ans), Rf_asLogical(upper));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1141:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1141 |                 for ( index_t i = 0; i < n; i++ )
      |                                      ~~^~~
signal.h: In instantiation of 'void smooth_snip(T*, size_t, T*, int, bool) [with T = int; size_t = long unsigned int]':
matterExports.cpp:1042:15:   required from here
 1042 |                         smooth_snip(INTEGER(x), LENGTH(x), INTEGER(ans),
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1043 |                                 Rf_asInteger(m), Rf_asLogical(decreasing));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:1163:13: note: in expansion of macro 'min2'
 1163 |         m = min2(m, n);
      |             ^~~~
signal.h:1180:39: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
 1180 |                 for ( size_t p = 1; p <= m; p++ )
      |                                     ~~^~~~
signal.h: In instantiation of 'void smooth_snip(T*, size_t, T*, int, bool) [with T = double; size_t = long unsigned int]':
matterExports.cpp:1046:15:   required from here
 1046 |                         smooth_snip(REAL(x), LENGTH(x), REAL(ans),
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1047 |                                 Rf_asInteger(m), Rf_asLogical(decreasing));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:1163:13: note: in expansion of macro 'min2'
 1163 |         m = min2(m, n);
      |             ^~~~
signal.h:1180:39: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
 1180 |                 for ( size_t p = 1; p <= m; p++ )
      |                                     ~~^~~~
signal.h: In instantiation of 'size_t local_maxima(T*, size_t, int*, int) [with T = int; size_t = long unsigned int]':
matterExports.cpp:1062:16:   required from here
 1062 |                         local_maxima(INTEGER(x), LENGTH(x),
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
 1063 |                                 LOGICAL(ans), Rf_asInteger(width));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1202:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1202 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h:1205:33: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1205 |                 if ( i < r || i > n - r )
      |                               ~~^~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1207:21: note: in expansion of macro 'norm_ind'
 1207 |                 a = norm_ind(i - r, n);
      |                     ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1208:21: note: in expansion of macro 'norm_ind'
 1208 |                 b = norm_ind(i + r, n);
      |                     ^~~~~~~~
signal.h: In instantiation of 'size_t local_maxima(T*, size_t, int*, int) [with T = double; size_t = long unsigned int]':
matterExports.cpp:1066:16:   required from here
 1066 |                         local_maxima(REAL(x), LENGTH(x),
      |                         ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 1067 |                                 LOGICAL(ans), Rf_asInteger(width));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1202:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1202 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal.h:1205:33: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1205 |                 if ( i < r || i > n - r )
      |                               ~~^~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1207:21: note: in expansion of macro 'norm_ind'
 1207 |                 a = norm_ind(i - r, n);
      |                     ^~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1208:21: note: in expansion of macro 'norm_ind'
 1208 |                 b = norm_ind(i + r, n);
      |                     ^~~~~~~~
signal.h: In instantiation of 'void peak_boundaries(T*, size_t, int*, size_t, int*, int*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:1084:19:   required from here
 1084 |                         peak_boundaries(INTEGER(x), LENGTH(x),
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
 1085 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1086 |                                 INTEGER(left_bounds), INTEGER(right_bounds));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1313:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1313 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h: In instantiation of 'void peak_boundaries(T*, size_t, int*, size_t, int*, int*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:1089:19:   required from here
 1089 |                         peak_boundaries(REAL(x), LENGTH(x),
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 1090 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1091 |                                 INTEGER(left_bounds), INTEGER(right_bounds));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1313:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1313 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h: In instantiation of 'void peak_bases(T*, size_t, int*, size_t, int*, int*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:1110:14:   required from here
 1110 |                         peak_bases(INTEGER(x), LENGTH(x),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
 1111 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1112 |                                 INTEGER(left_bases), INTEGER(right_bases));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1327:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1327 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h:1340:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1340 |                 for ( int j = peaks[i] + 1; j < n; j++ )
      |                                             ~~^~~
signal.h: In instantiation of 'void peak_bases(T*, size_t, int*, size_t, int*, int*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:1115:14:   required from here
 1115 |                         peak_bases(REAL(x), LENGTH(x),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 1116 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1117 |                                 INTEGER(left_bases), INTEGER(right_bases));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1327:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1327 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h:1340:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1340 |                 for ( int j = peaks[i] + 1; j < n; j++ )
      |                                             ~~^~~
signal.h: In instantiation of 'void peak_widths(Tx*, Tt*, size_t, int*, size_t, int*, int*, double*, double*, double*) [with Tx = int; Tt = double; size_t = long unsigned int]':
matterExports.cpp:1139:15:   required from here
 1139 |                         peak_widths(INTEGER(x), REAL(domain), LENGTH(x),
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1140 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1141 |                                 INTEGER(left_limits), INTEGER(right_limits), REAL(heights),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1142 |                                 REAL(left_ips), REAL(right_ips));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1359:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1359 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h:1361:58: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1361 |                 if ( left_limit[i] < 0 || right_limit[i] >= n )
      |                                           ~~~~~~~~~~~~~~~^~~~
signal.h:1376:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1376 |                 for ( int j = peaks[i] + 1; j < n && j <= right_limit[i]; j++ )
      |                                             ~~^~~
signal.h: In instantiation of 'void peak_widths(Tx*, Tt*, size_t, int*, size_t, int*, int*, double*, double*, double*) [with Tx = double; Tt = double; size_t = long unsigned int]':
matterExports.cpp:1145:15:   required from here
 1145 |                         peak_widths(REAL(x), REAL(domain), LENGTH(x),
      |                         ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1146 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1147 |                                 INTEGER(left_limits), INTEGER(right_limits), REAL(heights),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1148 |                                 REAL(left_ips), REAL(right_ips));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1359:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1359 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h:1361:58: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1361 |                 if ( left_limit[i] < 0 || right_limit[i] >= n )
      |                                           ~~~~~~~~~~~~~~~^~~~
signal.h:1376:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1376 |                 for ( int j = peaks[i] + 1; j < n && j <= right_limit[i]; j++ )
      |                                             ~~^~~
signal.h: In instantiation of 'void peak_areas(Tx*, Tt*, size_t, int*, size_t, int*, int*, double*) [with Tx = int; Tt = double; size_t = long unsigned int]':
matterExports.cpp:1168:14:   required from here
 1168 |                         peak_areas(INTEGER(x), REAL(domain), LENGTH(x),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1169 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1170 |                                 INTEGER(left_limits), INTEGER(right_limits),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1171 |                                 REAL(ans));
      |                                 ~~~~~~~~~~
signal.h:1397:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1397 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h:1401:58: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1401 |                 if ( left_limit[i] < 0 || right_limit[i] >= n )
      |                                           ~~~~~~~~~~~~~~~^~~~
signal.h: In instantiation of 'void peak_areas(Tx*, Tt*, size_t, int*, size_t, int*, int*, double*) [with Tx = double; Tt = double; size_t = long unsigned int]':
matterExports.cpp:1174:14:   required from here
 1174 |                         peak_areas(REAL(x), REAL(domain), LENGTH(x),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1175 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1176 |                                 INTEGER(left_limits), INTEGER(right_limits),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1177 |                                 REAL(ans));
      |                                 ~~~~~~~~~~
signal.h:1397:47: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1397 |                 if ( peaks[i] < 0 || peaks[i] >= n )
      |                                      ~~~~~~~~~^~~~
signal.h:1401:58: warning: comparison of integer expressions of different signedness: 'int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1401 |                 if ( left_limit[i] < 0 || right_limit[i] >= n )
      |                                           ~~~~~~~~~~~~~~~^~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1199:25:   required from here
 1199 |                                         do_approx1<int,int>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1200 |                                                 INTEGER(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1201 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1202 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1205:28:   required from here
 1205 |                                         do_approx1<double,int>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1206 |                                                 REAL(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1207 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1208 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1217:28:   required from here
 1217 |                                         do_approx1<int,double>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1218 |                                                 INTEGER(x), REAL(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1219 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1220 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1223:31:   required from here
 1223 |                                         do_approx1<double,double>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1224 |                                                 REAL(x), REAL(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1225 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1226 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
In file included from matterExports.h:12:
signal2.h: In instantiation of 'void diffusion_filter2(T*, int, int, int, double, double, int, double*) [with T = int]':
matterExports.cpp:1337:22:   required from here
 1337 |                                 diffusion_filter2(INTEGER(x) + j, Rf_nrows(x), Rf_ncols(x),
      |                                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1338 |                                         Rf_asInteger(niter), Rf_asReal(kappa), Rf_asReal(rate),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1339 |                                         Rf_asInteger(method), REAL(result) + j);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:377:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  377 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal2.h: In instantiation of 'void diffusion_filter2(T*, int, int, int, double, double, int, double*) [with T = double]':
matterExports.cpp:1342:22:   required from here
 1342 |                                 diffusion_filter2(REAL(x) + j, Rf_nrows(x), Rf_ncols(x),
      |                                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1343 |                                         Rf_asInteger(niter), Rf_asReal(kappa), Rf_asReal(rate),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1344 |                                         Rf_asInteger(method), REAL(result) + j);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:377:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  377 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal2.h: In instantiation of 'size_t local_maxima_knn(T*, size_t, size_t, int*, int*) [with T = int; size_t = long unsigned int]':
matterExports.cpp:1441:20:   required from here
 1441 |                         local_maxima_knn(INTEGER(x), LENGTH(x), Rf_ncols(neighbors),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1442 |                                 INTEGER(neighbors), LOGICAL(ans));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:720:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  720 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal2.h:723:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  723 |                 for ( index_t j = 0; j < k; j++ )
      |                                      ~~^~~
signal2.h: In instantiation of 'size_t local_maxima_knn(T*, size_t, size_t, int*, int*) [with T = double; size_t = long unsigned int]':
matterExports.cpp:1445:20:   required from here
 1445 |                         local_maxima_knn(REAL(x), LENGTH(x), Rf_ncols(neighbors),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1446 |                                 INTEGER(neighbors), LOGICAL(ans));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:720:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  720 |         for ( index_t i = 0; i < n; i++ )
      |                              ~~^~~
signal2.h:723:40: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  723 |                 for ( index_t j = 0; j < k; j++ )
      |                                      ~~^~~
signal2.h: In instantiation of 'size_t do_approx2(Tout*, Txy*, Txy*, size_t, Txy*, Tz*, size_t, double*, int, Tout, int, int) [with Txy = int; Tz = int; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1470:25:   required from here
 1470 |                                         do_approx2<int,int>(REAL(result),
      |                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
 1471 |                                                 INTEGER(xi), INTEGER(yi), LENGTH(xi),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1472 |                                                 INTEGER(xy), INTEGER(z), LENGTH(z),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1473 |                                                 REAL(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1474 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:870:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  870 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
signal2.h: In instantiation of 'size_t do_approx2(Tout*, Txy*, Txy*, size_t, Txy*, Tz*, size_t, double*, int, Tout, int, int) [with Txy = double; Tz = int; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1477:28:   required from here
 1477 |                                         do_approx2<double,int>(REAL(result),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
 1478 |                                                 REAL(xi), REAL(yi), LENGTH(xi),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1479 |                                                 REAL(xy), INTEGER(z), LENGTH(z),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1480 |                                                 REAL(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1481 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:870:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  870 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
signal2.h: In instantiation of 'size_t do_approx2(Tout*, Txy*, Txy*, size_t, Txy*, Tz*, size_t, double*, int, Tout, int, int) [with Txy = int; Tz = double; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1490:28:   required from here
 1490 |                                         do_approx2<int,double>(REAL(result),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
 1491 |                                                 INTEGER(xi), INTEGER(yi), LENGTH(xi),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1492 |                                                 INTEGER(xy), REAL(z), LENGTH(z),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1493 |                                                 REAL(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1494 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:870:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  870 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
signal2.h: In instantiation of 'size_t do_approx2(Tout*, Txy*, Txy*, size_t, Txy*, Tz*, size_t, double*, int, Tout, int, int) [with Txy = double; Tz = double; Tout = double; size_t = long unsigned int]':
matterExports.cpp:1497:31:   required from here
 1497 |                                         do_approx2<double,double>(REAL(result),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
 1498 |                                                 REAL(xi), REAL(yi), LENGTH(xi),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1499 |                                                 REAL(xy), REAL(z), LENGTH(z),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1500 |                                                 REAL(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1501 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal2.h:870:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  870 |         for ( index_t i = 0; i < ni; i++ )
      |                              ~~^~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = int; Tlen = int; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:572:22:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = int; SEXP = SEXPREC*]'
  572 |                         recode_drle<T,int>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  573 |                                 DataPtr<T>(deltas), INTEGER(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:595:22:   required from here
  595 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = int; Tlen = double; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:576:25:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = int; SEXP = SEXPREC*]'
  576 |                         recode_drle<T,double>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                                 DataPtr<T>(deltas), REAL(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:595:22:   required from here
  595 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = double; Tlen = int; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:572:22:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = double; SEXP = SEXPREC*]'
  572 |                         recode_drle<T,int>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  573 |                                 DataPtr<T>(deltas), INTEGER(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:599:22:   required from here
  599 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
drle.h: In instantiation of 'size_t recode_drle(CompressedVector<T>, SEXP, Tval*, Tval*, Tlen*, size_t) [with Tval = double; Tlen = double; size_t = long unsigned int; SEXP = SEXPREC*]':
drle.h:576:25:   required from 'SEXPREC* recode_drle(CompressedVector<T>, SEXP) [with T = double; SEXP = SEXPREC*]'
  576 |                         recode_drle<T,double>(x, indx, DataPtr<T>(values),
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  577 |                                 DataPtr<T>(deltas), REAL(lengths), nruns);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drle.h:599:22:   required from here
  599 |                         return recode_drle(y, indx);
      |                                ~~~~~~~~~~~^~~~~~~~~
drle.h:548:19: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  548 |         while ( i < XLENGTH(indx) && j < nruns )
      |                 ~~^~~~~~~~~~~~~~~
In file included from matter.h:6:
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:153:16:   required from here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = int; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:157:16:   required from here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
ops.h: In instantiation of 'size_t DeferredOps::apply(T*, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]':
matter.h:83:20:   required from 'size_t MatterArray::get_region(index_t, size_t, T*, int) [with T = double; size_t = long unsigned int; index_t = long int]'
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:165:16:   required from here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~
ops.h:189:48: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  189 |                         for ( index_t j = 0; j < size; j++ )
      |                                              ~~^~~~~~
matterDefines.h: In instantiation of 'size_t ArrayInterface::transpose_index(T*, SEXP, bool) [with T = long int; size_t = long unsigned int; SEXP = SEXPREC*]':
matter.h:116:20:   required from 'size_t MatterArray::get_elements(SEXP, T*, int) [with T = unsigned char; size_t = long unsigned int; SEXP = SEXPREC*]'
  116 |                                 transpose_index(tindx, indx, true);
      |                                 ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
matter.h:209:18:   required from here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ~~~~~~~~~~~~^~~~~~~~~~~~~~
matterDefines.h:379:47: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'R_xlen_t' {aka 'long int'} [-Wsign-compare]
  379 |                         for ( size_t j = 0; j < XLENGTH(indx); j++ )
      |                                             ~~^~~~~~~~~~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:417:30:   required from here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
sparse.h: In instantiation of 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]':
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = double; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:420:33:   required from here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
sparse.h:305:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  305 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
sparse.h:332:59: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  332 |                                         if ( ii < 0 || ii >= size )
      |                                                        ~~~^~~~~~~
search.h: In instantiation of 'index_t binary_search(T, T*, size_t, size_t, double, int, int, bool, bool) [with T = int; index_t = long int; size_t = long unsigned int]':
search.h:449:26:   required from 'index_t do_binary_search(int*, T*, size_t, T*, size_t, size_t, double, int, int, bool, bool) [with T = int; index_t = long int; size_t = long unsigned int]'
  449 |                         ptr[i] = binary_search(x[i], table, start, end,
      |                                  ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
  450 |                                 tol, tol_ref, nomatch, nearest, ind1);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:161:20:   required from here
  161 |                         do_binary_search(INTEGER(pos), INTEGER(x), LENGTH(x), INTEGER(table),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  162 |                                 0, LENGTH(table), Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  163 |                                 Rf_asInteger(nomatch), Rf_asLogical(nearest), true);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:421:16: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  421 |         if ( j == end )
      |              ~~^~~~~~
search.h: In instantiation of 'index_t binary_search(T, T*, size_t, size_t, double, int, int, bool, bool) [with T = double; index_t = long int; size_t = long unsigned int]':
search.h:449:26:   required from 'index_t do_binary_search(int*, T*, size_t, T*, size_t, size_t, double, int, int, bool, bool) [with T = double; index_t = long int; size_t = long unsigned int]'
  449 |                         ptr[i] = binary_search(x[i], table, start, end,
      |                                  ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
  450 |                                 tol, tol_ref, nomatch, nearest, ind1);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:166:20:   required from here
  166 |                         do_binary_search(INTEGER(pos), REAL(x), LENGTH(x), REAL(table),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  167 |                                 0, LENGTH(table), Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  168 |                                 Rf_asInteger(nomatch), Rf_asLogical(nearest), true);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:421:16: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  421 |         if ( j == end )
      |              ~~^~~~~~
search.h: In instantiation of 'index_t binary_search(T, T*, size_t, size_t, double, int, int, bool, bool) [with T = SEXPREC*; index_t = long int; size_t = long unsigned int]':
search.h:449:26:   required from 'index_t do_binary_search(int*, T*, size_t, T*, size_t, size_t, double, int, int, bool, bool) [with T = SEXPREC*; index_t = long int; size_t = long unsigned int]'
  449 |                         ptr[i] = binary_search(x[i], table, start, end,
      |                                  ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
  450 |                                 tol, tol_ref, nomatch, nearest, ind1);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:171:20:   required from here
  171 |                         do_binary_search(INTEGER(pos), STRING_PTR(x), LENGTH(x), STRING_PTR(table),
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  172 |                                 0, LENGTH(table), Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  173 |                                 Rf_asInteger(nomatch), Rf_asLogical(nearest), true);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
search.h:421:16: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  421 |         if ( j == end )
      |              ~~^~~~~~
dist.h: In instantiation of 'double do_dist(T*, T*, size_t, int, int, int, double, double*) [with T = int; size_t = long unsigned int]':
dist.h:69:34:   required from 'void row_dist(T*, T*, size_t, size_t, size_t, double*, int, double, double*) [with T = int; size_t = long unsigned int]'
   69 |                         buffer[iy * nx + ix] = do_dist(xx, yy,
      |                                                ~~~~~~~^~~~~~~~
   70 |                                 k, nx, ny, metric, p, weights);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:321:12:   required from here
  321 |                         row_dist(INTEGER(x), INTEGER(y), Rf_nrows(x), Rf_nrows(y), Rf_ncols(x),
      |                         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  322 |                                 REAL(result), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:21:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   21 |         for ( index_t i = 0; i < k; i++ )
      |                              ~~^~~
dist.h: In instantiation of 'double do_dist(T*, T*, size_t, int, int, int, double, double*) [with T = double; size_t = long unsigned int]':
dist.h:69:34:   required from 'void row_dist(T*, T*, size_t, size_t, size_t, double*, int, double, double*) [with T = double; size_t = long unsigned int]'
   69 |                         buffer[iy * nx + ix] = do_dist(xx, yy,
      |                                                ~~~~~~~^~~~~~~~
   70 |                                 k, nx, ny, metric, p, weights);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:325:12:   required from here
  325 |                         row_dist(REAL(x), REAL(y), Rf_nrows(x), Rf_nrows(y), Rf_ncols(x),
      |                         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  326 |                                 REAL(result), Rf_asInteger(metric), Rf_asReal(p), wts);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:21:32: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   21 |         for ( index_t i = 0; i < k; i++ )
      |                              ~~^~~
dist.h: In instantiation of 'bool in_poly(T, T, T*, T*, size_t) [with T = int; size_t = long unsigned int]':
dist.h:178:19:   required from 'index_t do_in_poly(int*, T*, size_t, T*, size_t) [with T = int; index_t = long int; size_t = long unsigned int]'
  178 |                 ptr[i] = in_poly(x[i], y[i], vx, vy, nvert);
      |                          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:456:14:   required from here
  456 |                         do_in_poly(LOGICAL(result), INTEGER(points), Rf_nrows(points),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  457 |                                 INTEGER(vertices), Rf_nrows(vertices));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:144:39: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  144 |         for ( i = 0, j = nvert - 1; i < nvert; j = i++)
      |                                     ~~^~~~~~~
dist.h: In instantiation of 'bool in_poly(T, T, T*, T*, size_t) [with T = double; size_t = long unsigned int]':
dist.h:178:19:   required from 'index_t do_in_poly(int*, T*, size_t, T*, size_t) [with T = double; index_t = long int; size_t = long unsigned int]'
  178 |                 ptr[i] = in_poly(x[i], y[i], vx, vy, nvert);
      |                          ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:460:14:   required from here
  460 |                         do_in_poly(LOGICAL(result), REAL(points), Rf_nrows(points),
      |                         ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  461 |                                 REAL(vertices), Rf_nrows(vertices));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dist.h:144:39: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
  144 |         for ( i = 0, j = nvert - 1; i < nvert; j = i++)
      |                                     ~~^~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:504:20:   required from here
  504 |                         xm.get_atom<int>(INTEGER(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:508:23:   required from here
  508 |                         xm.get_atom<double>(REAL(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = int; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = int; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:532:20:   required from here
  532 |                         xa.set_atom<int>(INTEGER(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = double; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = double; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:535:23:   required from here
  535 |                         xa.set_atom<double>(REAL(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
signal.h: In instantiation of 'index_t peak_lbound(T*, index_t, size_t) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1315:31:   required from 'void peak_boundaries(T*, size_t, int*, size_t, int*, int*) [with T = int; size_t = long unsigned int]'
 1315 |                 left_buffer[i] = peak_lbound(x, peaks[i], n);
      |                                  ~~~~~~~~~~~^~~~~~~~~~~~~~~~
matterExports.cpp:1084:19:   required from here
 1084 |                         peak_boundaries(INTEGER(x), LENGTH(x),
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
 1085 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1086 |                                 INTEGER(left_bounds), INTEGER(right_bounds));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1249:43: note: in expansion of macro 'norm_ind'
 1249 |                         index_t lwindow = norm_ind(cand - 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'index_t peak_rbound(T*, index_t, size_t) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1316:32:   required from 'void peak_boundaries(T*, size_t, int*, size_t, int*, int*) [with T = int; size_t = long unsigned int]'
 1316 |                 right_buffer[i] = peak_rbound(x, peaks[i], n);
      |                                   ~~~~~~~~~~~^~~~~~~~~~~~~~~~
matterExports.cpp:1084:19:   required from here
 1084 |                         peak_boundaries(INTEGER(x), LENGTH(x),
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
 1085 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1086 |                                 INTEGER(left_bounds), INTEGER(right_bounds));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1276:39: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1276 |         for ( index_t i = peak + 1; i < n; i++ )
      |                                     ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1287:43: note: in expansion of macro 'norm_ind'
 1287 |                         index_t rwindow = norm_ind(cand + 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'index_t peak_lbound(T*, index_t, size_t) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1315:31:   required from 'void peak_boundaries(T*, size_t, int*, size_t, int*, int*) [with T = double; size_t = long unsigned int]'
 1315 |                 left_buffer[i] = peak_lbound(x, peaks[i], n);
      |                                  ~~~~~~~~~~~^~~~~~~~~~~~~~~~
matterExports.cpp:1089:19:   required from here
 1089 |                         peak_boundaries(REAL(x), LENGTH(x),
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 1090 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1091 |                                 INTEGER(left_bounds), INTEGER(right_bounds));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1249:43: note: in expansion of macro 'norm_ind'
 1249 |                         index_t lwindow = norm_ind(cand - 2, n);
      |                                           ^~~~~~~~
signal.h: In instantiation of 'index_t peak_rbound(T*, index_t, size_t) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1316:32:   required from 'void peak_boundaries(T*, size_t, int*, size_t, int*, int*) [with T = double; size_t = long unsigned int]'
 1316 |                 right_buffer[i] = peak_rbound(x, peaks[i], n);
      |                                   ~~~~~~~~~~~^~~~~~~~~~~~~~~~
matterExports.cpp:1089:19:   required from here
 1089 |                         peak_boundaries(REAL(x), LENGTH(x),
      |                         ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 1090 |                                 INTEGER(peaks), LENGTH(peaks),
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1091 |                                 INTEGER(left_bounds), INTEGER(right_bounds));
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1276:39: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1276 |         for ( index_t i = peak + 1; i < n; i++ )
      |                                     ~~^~~
matterDefines.h:12:25: warning: comparison of integer expressions of different signedness: 'long int' and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
   12 | #define min2(x, y) ((x) < (y) ? (x) : (y))
      |                     ~~~~^~~~~
signal.h:42:25: note: in expansion of macro 'min2'
   42 | #define norm_ind(i, n) (min2(max2((i), 0), (n - 1)))
      |                         ^~~~
signal.h:1287:43: note: in expansion of macro 'norm_ind'
 1287 |                         index_t rwindow = norm_ind(cand + 2, n);
      |                                           ^~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:467:20:   required from 'size_t Atoms::get_region(T*, index_t, size_t, int, int) [with T = char; size_t = long unsigned int; index_t = long int]'
  467 |                                 n = get_atom<T>(ptr, atom, pos, num_toread, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:493:30:   required from here
  493 |                                         data()->get_region<char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:356:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  356 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = char; size_t = long unsigned int; index_t = long int]':
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]':
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = short int; size_t = long unsigned int; index_t = long int]':
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = int; size_t = long unsigned int; index_t = long int]':
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = long int; size_t = long unsigned int; index_t = long int]':
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]':
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = float; size_t = long unsigned int; index_t = long int]':
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
atoms.h: In instantiation of 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = const char; Tout = double; size_t = long unsigned int; index_t = long int]':
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
atoms.h:489:20:   required from 'size_t Atoms::set_region(T*, index_t, size_t, int, int) [with T = const char; size_t = long unsigned int; index_t = long int]'
  489 |                                 n = set_atom<T>(ptr, atom, pos, num_towrite, stride);
      |                                     ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matter.h:538:36:   required from here
  538 |                                         data()->set_region<const char>(s, 0, dim(i), i);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
atoms.h:381:41: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  381 |                         if ( pos + size >= extent(atom) )
      |                              ~~~~~~~~~~~^~~~~~~~~~~~~~~
sparse.h: In instantiation of 'void SparseArray::copy_domain(index_t, size_t, T*) [with T = int; index_t = long int; size_t = long unsigned int]':
sparse.h:318:22:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  318 |                                 copy_domain<Tind>(i, size, subscripts);
      |                                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:187:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  187 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = int; size_t = long unsigned int]':
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = int; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:404:27:   required from here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
sparse.h: In instantiation of 'void SparseArray::copy_domain(index_t, size_t, T*) [with T = double; index_t = long int; size_t = long unsigned int]':
sparse.h:318:22:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  318 |                                 copy_domain<Tind>(i, size, subscripts);
      |                                 ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
sparse.h:187:48: warning: comparison of integer expressions of different signedness: 'long unsigned int' and 'index_t' {aka 'long int'} [-Wsign-compare]
  187 |                         if ( i < 0 || i + size > sparse_extent() )
      |                                       ~~~~~~~~~^~~~~~~~~~~~~~~~~
signal.h: In instantiation of 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = int; size_t = long unsigned int]':
sparse.h:319:32:   required from 'size_t SparseArray::get_compressed_region(index_t, index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
  320 |                                         DataPtr<Tind>(j), DataPtr<Tval>(x), 0, XLENGTH(j),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  321 |                                         tol(), tol_ref(), zero<Tval>(), sampler(), stride);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:373:43:   required from 'size_t SparseArray::get_region(index_t, size_t, Tval*, int) [with Tind = double; Tval = int; size_t = long unsigned int; index_t = long int]'
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
sparse.h:407:30:   required from here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h:1687:54: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1687 |                         for ( index_t i = indx[j]; i < ni; i++ )
      |                                                    ~~^~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = char; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = char; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:402:30:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  402 |                                         return read_atom<char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = unsigned char; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = unsigned char; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:404:39:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  404 |                                         return read_atom<unsigned char,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = short int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = short int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:406:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  406 |                                         return read_atom<int16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = short unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:408:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  408 |                                         return read_atom<uint16_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:410:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  410 |                                         return read_atom<int32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:412:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  412 |                                         return read_atom<uint32_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = long int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = long int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:414:33:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  414 |                                         return read_atom<int64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = long unsigned int; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:416:34:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  416 |                                         return read_atom<uint64_t,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = float; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = float; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = float; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:418:31:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  418 |                                         return read_atom<float,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::read(void*, size_t) [with T = double; size_t = long unsigned int]':
atoms.h:150:52:   required from 'bool DataSources::read(void*, size_t) [with T = double; size_t = long unsigned int]'
  150 |                                         source<SharedMemorySource*>(_current)->read<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:360:58:   required from 'size_t Atoms::read_atom(Tout*, int, index_t, size_t, int) [with Tin = double; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  360 |                         bool success = _io.rseek(source(atom), off)->read<Tin>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:420:32:   required from 'size_t Atoms::get_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  420 |                                         return read_atom<double,T>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:500:22:   required from here
  500 |                         xm.get_atom<Rbyte>(RAW(ans), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h:140:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  140 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = char; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = char; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = char; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:431:31:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  431 |                                         return write_atom<T,char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = unsigned char; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = unsigned char; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned char; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:433:40:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  433 |                                         return write_atom<T,unsigned char>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = short int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = short int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:435:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  435 |                                         return write_atom<T,int16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = short unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = short unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:437:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  437 |                                         return write_atom<T,uint16_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:439:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  439 |                                         return write_atom<T,int32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:441:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  441 |                                         return write_atom<T,uint32_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = long int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = long int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:443:34:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  443 |                                         return write_atom<T,int64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = long unsigned int; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = long unsigned int; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:445:35:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  445 |                                         return write_atom<T,uint64_t>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = float; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = float; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = float; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:447:32:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  447 |                                         return write_atom<T,float>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
resources.h: In instantiation of 'void SharedMemorySource::write(void*, size_t) [with T = double; size_t = long unsigned int]':
atoms.h:170:53:   required from 'bool DataSources::write(void*, size_t) [with T = double; size_t = long unsigned int]'
  170 |                                         source<SharedMemorySource*>(_current)->write<T>(ptr, size);
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:387:60:   required from 'size_t Atoms::write_atom(Tin*, int, index_t, size_t, int) [with Tin = unsigned char; Tout = double; size_t = long unsigned int; index_t = long int]'
  387 |                         bool success = _io.wseek(source(atom), off)->write<Tout>(tmp, size);
      |                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
atoms.h:449:33:   required from 'size_t Atoms::set_atom(T*, int, index_t, size_t, int) [with T = unsigned char; size_t = long unsigned int; index_t = long int]'
  449 |                                         return write_atom<T,double>(ptr, atom, pos, size, stride);
      |                                                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:529:22:   required from here
  529 |                         xa.set_atom<Rbyte>(RAW(value), j, 0, len);
      |                         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
resources.h:154:37: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'std::size_t' {aka 'long unsigned int'} [-Wsign-compare]
  154 |                         if ( extent > _region->get_size() )
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1199:25:   required from here
 1199 |                                         do_approx1<int,int>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1200 |                                                 INTEGER(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1201 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1202 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1199:25:   required from here
 1199 |                                         do_approx1<int,int>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1200 |                                                 INTEGER(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1201 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1202 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1205:28:   required from here
 1205 |                                         do_approx1<double,int>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1206 |                                                 REAL(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1207 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1208 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1205:28:   required from here
 1205 |                                         do_approx1<double,int>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1206 |                                                 REAL(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1207 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1208 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1217:28:   required from here
 1217 |                                         do_approx1<int,double>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1218 |                                                 INTEGER(x), REAL(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1219 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1220 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = double; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1217:28:   required from here
 1217 |                                         do_approx1<int,double>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1218 |                                                 INTEGER(x), REAL(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1219 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1220 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_linear(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1580:25:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]'
 1580 |                         return interp1_linear(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1223:31:   required from here
 1223 |                                         do_approx1<double,double>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1224 |                                                 REAL(x), REAL(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1225 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1226 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1460:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1460 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol ) {
      |                      ~~~~~~^~~
signal.h: In instantiation of 'double interp1_cubic(Tx, Tx*, Ty*, index_t, size_t, double, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]':
signal.h:1582:24:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = double; index_t = long int; size_t = long unsigned int]'
 1582 |                         return interp1_cubic(xi, x, y, i, n, tol, tol_ref);
      |                                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = double; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1223:31:   required from here
 1223 |                                         do_approx1<double,double>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1224 |                                                 REAL(x), REAL(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1225 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1226 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1491:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1491 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1495:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1495 |                 if ( i + 2 < n && udiff(x[i + 2], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h:1509:28: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1509 |                 if ( i + 1 < n && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                      ~~~~~~^~~
signal.h: In instantiation of 'index_t wupper(T, T*, index_t, size_t, double, int) [with T = int; index_t = long int; size_t = long unsigned int]':
signal.h:1436:24:   required from 'double interp1_stat(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1436 |         index_t upper = wupper(xi, x, i, n, tol, tol_ref);
      |                         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1572:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = int; Ty = int; index_t = long int; size_t = long unsigned int]'
 1572 |                         return interp1_stat(xi, x, y, i, n, tol, tol_ref, interp);
      |                                ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = int; Ty = int; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1199:25:   required from here
 1199 |                                         do_approx1<int,int>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1200 |                                                 INTEGER(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1201 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1202 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1425:19: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1425 |         while ( i < n - 1 && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                 ~~^~~~~~~
signal.h: In instantiation of 'index_t wupper(T, T*, index_t, size_t, double, int) [with T = double; index_t = long int; size_t = long unsigned int]':
signal.h:1436:24:   required from 'double interp1_stat(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1436 |         index_t upper = wupper(xi, x, i, n, tol, tol_ref);
      |                         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1572:23:   required from 'double interp1(Tx, Tx*, Ty*, index_t, size_t, double, int, int) [with Tx = double; Ty = int; index_t = long int; size_t = long unsigned int]'
 1572 |                         return interp1_stat(xi, x, y, i, n, tol, tol_ref, interp);
      |                                ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1605:16:   required from 'Tout approx1(Tx, Tx*, Ty*, size_t, size_t, double, int, Tout, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]'
 1605 |                         yi = interp1(xi, x, y, i, end,
      |                              ~~~~~~~^~~~~~~~~~~~~~~~~~
 1606 |                                 tol, tol_ref, interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~
signal.h:1657:21:   required from 'size_t do_approx1(Tout*, Tx*, size_t, Tx*, Ty*, size_t, size_t, double, int, Tout, int, int) [with Tx = double; Ty = int; Tout = double; size_t = long unsigned int]'
 1657 |                         Tout yi = approx1(xi[i], xs, ys, start, end,
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
 1658 |                                 tol, tol_ref, NA<Tout>(), interp);
      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
matterExports.cpp:1205:28:   required from here
 1205 |                                         do_approx1<double,int>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1206 |                                                 REAL(x), INTEGER(y), 0, LENGTH(y),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1207 |                                                 Rf_asReal(tol), Rf_asInteger(tol_ref),
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 1208 |                                                 Rf_asReal(nomatch), Rf_asInteger(interp));
      |                                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
signal.h:1425:19: warning: comparison of integer expressions of different signedness: 'index_t' {aka 'long int'} and 'size_t' {aka 'long unsigned int'} [-Wsign-compare]
 1425 |         while ( i < n - 1 && udiff(x[i + 1], xi, tol_ref) <= tol )
      |                 ~~^~~~~~~
signal.h: In function 'void guided_filter(T*, T*, size_t, int, double, double, double*) [with T = int]':
signal.h:552:36: warning: 'gmax' may be used uninitialized [-Wmaybe-uninitialized]
  552 |                         K2 = (ftol * gmax) * (ftol * gmax);
      |                              ~~~~~~^~~~~~~
signal.h:493:16: note: 'gmax' was declared here
  493 |         double gmax, K2;
      |                ^~~~
signal.h: In function 'void guided_filter(T*, T*, size_t, int, double, double, double*) [with T = double]':
signal.h:552:36: warning: 'gmax' may be used uninitialized [-Wmaybe-uninitialized]
  552 |                         K2 = (ftol * gmax) * (ftol * gmax);
      |                              ~~~~~~^~~~~~~
signal.h:493:16: note: 'gmax' was declared here
  493 |         double gmax, K2;
      |                ^~~~
signal.h: In function 'void bilateral_filter(T*, size_t, int, double, double, double, double*) [with T = int]':
signal.h:398:63: warning: 'xmedian' may be used uninitialized [-Wmaybe-uninitialized]
  398 |                                         dx += std::fabs(x[ij] - xmedian);
      |                                                         ~~~~~~^~~~~~~~~
signal.h:370:16: note: 'xmedian' was declared here
  370 |         double xmedian, xmad, xrange;
      |                ^~~~~~~
signal.h:402:49: warning: 'xmad' may be used uninitialized [-Wmaybe-uninitialized]
  402 |                         double z = std::fabs(dx - xmad) / spar;
      |                                              ~~~^~~~~~
signal.h:370:25: note: 'xmad' was declared here
  370 |         double xmedian, xmad, xrange;
      |                         ^~~~
signal.h:406:46: warning: 'xrange' may be used uninitialized [-Wmaybe-uninitialized]
  406 |                                 sdr = xrange * std::exp(-z) / std::sqrt(2);
      |                                       ~~~~~~~^~~~~~~~~~~~~~
signal.h:370:31: note: 'xrange' was declared here
  370 |         double xmedian, xmad, xrange;
      |                               ^~~~~~
signal2.h: In function 'void bilateral_filter2(T*, int, int, int, double, double, double, double*) [with T = int]':
signal2.h:326:77: warning: 'xmedian' may be used uninitialized [-Wmaybe-uninitialized]
  326 |                                                         dx += std::fabs(xij - xmedian);
      |                                                                         ~~~~^~~~~~~~~
signal2.h:291:16: note: 'xmedian' was declared here
  291 |         double xmedian, xmad, xrange;
      |                ^~~~~~~
signal2.h:332:57: warning: 'xmad' may be used uninitialized [-Wmaybe-uninitialized]
  332 |                                 double z = std::fabs(dx - xmad) / spar;
      |                                                      ~~~^~~~~~
signal2.h:291:25: note: 'xmad' was declared here
  291 |         double xmedian, xmad, xrange;
      |                         ^~~~
signal2.h:336:54: warning: 'xrange' may be used uninitialized [-Wmaybe-uninitialized]
  336 |                                         sdr = xrange * std::exp(-z) / std::sqrt(2);
      |                                               ~~~~~~~^~~~~~~~~~~~~~
signal2.h:291:31: note: 'xrange' was declared here
  291 |         double xmedian, xmad, xrange;
      |                               ^~~~~~
signal.h: In function 'void bilateral_filter(T*, size_t, int, double, double, double, double*) [with T = double]':
signal.h:398:63: warning: 'xmedian' may be used uninitialized [-Wmaybe-uninitialized]
  398 |                                         dx += std::fabs(x[ij] - xmedian);
      |                                                         ~~~~~~^~~~~~~~~
signal.h:370:16: note: 'xmedian' was declared here
  370 |         double xmedian, xmad, xrange;
      |                ^~~~~~~
signal.h:402:49: warning: 'xmad' may be used uninitialized [-Wmaybe-uninitialized]
  402 |                         double z = std::fabs(dx - xmad) / spar;
      |                                              ~~~^~~~~~
signal.h:370:25: note: 'xmad' was declared here
  370 |         double xmedian, xmad, xrange;
      |                         ^~~~
signal.h:406:46: warning: 'xrange' may be used uninitialized [-Wmaybe-uninitialized]
  406 |                                 sdr = xrange * std::exp(-z) / std::sqrt(2);
      |                                       ~~~~~~~^~~~~~~~~~~~~~
signal.h:370:31: note: 'xrange' was declared here
  370 |         double xmedian, xmad, xrange;
      |                               ^~~~~~
signal2.h: In function 'void bilateral_filter2(T*, int, int, int, double, double, double, double*) [with T = double]':
signal2.h:326:77: warning: 'xmedian' may be used uninitialized [-Wmaybe-uninitialized]
  326 |                                                         dx += std::fabs(xij - xmedian);
      |                                                                         ~~~~^~~~~~~~~
signal2.h:291:16: note: 'xmedian' was declared here
  291 |         double xmedian, xmad, xrange;
      |                ^~~~~~~
signal2.h:332:57: warning: 'xmad' may be used uninitialized [-Wmaybe-uninitialized]
  332 |                                 double z = std::fabs(dx - xmad) / spar;
      |                                                      ~~~^~~~~~
signal2.h:291:25: note: 'xmad' was declared here
  291 |         double xmedian, xmad, xrange;
      |                         ^~~~
signal2.h:336:54: warning: 'xrange' may be used uninitialized [-Wmaybe-uninitialized]
  336 |                                         sdr = xrange * std::exp(-z) / std::sqrt(2);
      |                                               ~~~~~~~^~~~~~~~~~~~~~
signal2.h:291:31: note: 'xrange' was declared here
  291 |         double xmedian, xmad, xrange;
      |                               ^~~~~~
g++ -std=gnu++17 -shared -L/home/biocbuild/R/R-4.4.1/lib -L/usr/local/lib -o matter.so altrep.o init.o matterExports.o -L/home/biocbuild/R/R-4.4.1/lib -lR
installing to /home/biocbuild/R/R-4.4.1/site-library/00LOCK-matter/00new/matter/libs
** R
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (matter)

Tests output

matter.Rcheck/tests/testthat.Rout


R version 4.4.1 (2024-06-14) -- "Race for Your Life"
Copyright (C) 2024 The R Foundation for Statistical Computing
Platform: aarch64-unknown-linux-gnu

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(testthat)
> library(matter)
Loading required package: BiocParallel
Loading required package: Matrix
> 
> test_check("matter")

  |                                                                            
  |                                                                      |   0%
  |                                                                            
  |====                                                                  |   5%
  |                                                                            
  |=======                                                               |  10%
  |                                                                            
  |==========                                                            |  15%
  |                                                                            
  |==============                                                        |  20%
  |                                                                            
  |==================                                                    |  25%
  |                                                                            
  |=====================                                                 |  30%
  |                                                                            
  |========================                                              |  35%
  |                                                                            
  |============================                                          |  40%
  |                                                                            
  |================================                                      |  45%
  |                                                                            
  |===================================                                   |  50%
  |                                                                            
  |======================================                                |  55%
  |                                                                            
  |==========================================                            |  60%
  |                                                                            
  |==============================================                        |  65%
  |                                                                            
  |=================================================                     |  70%
  |                                                                            
  |====================================================                  |  75%
  |                                                                            
  |========================================================              |  80%
  |                                                                            
  |============================================================          |  85%
  |                                                                            
  |===============================================================       |  90%
  |                                                                            
  |==================================================================    |  95%
  |                                                                            
  |======================================================================| 100%

[ FAIL 0 | WARN 0 | SKIP 0 | PASS 2079 ]
> 
> proc.time()
   user  system elapsed 
122.729   3.163 144.952 

Example timings

matter.Rcheck/matter-Ex.timings

nameusersystemelapsed
RNGStreams1.1200.0441.166
SnowfastParam-class0.2770.0453.191
approx10.0030.0000.003
approx20.0060.0000.007
avg0.0000.0020.003
binpeaks0.0080.0000.009
binvec0.0010.0000.001
bsearch0.0020.0010.001
checksum0.0350.0040.038
chunkApply0.3260.0350.363
chunked-class0.010.000.01
colscale0.2740.0440.320
colsweep0.0320.0000.033
convolve_at0.1230.0120.136
coscore0.1450.0000.145
cpal0.0040.0000.004
cv_do0.2270.0160.243
deferred-ops0.3340.0120.347
downsample0.0430.0000.043
drle-class0.0020.0000.002
enhance0.0270.0000.027
estbase0.0140.0000.014
estdim0.0050.0000.005
estnoise0.0450.0000.044
estres0.0010.0000.002
fastmap0.1590.0280.188
fetch0.1330.0120.146
filt10.0370.0040.041
filt20.0280.0000.027
filtn0.0050.0000.004
findpeaks0.0330.0000.034
findpeaks_cwt0.1710.0110.183
findpeaks_knn0.0030.0000.004
iQuote0.0010.0000.001
inpoly0.0050.0000.005
isofun0.0340.0000.034
knnsearch0.0010.0000.001
matter-class0.0310.0030.034
matter_arr-class0.0290.0040.033
matter_fct-class0.0230.0000.023
matter_list-class0.0130.0000.013
matter_str-class0.0290.0000.029
mem0.6240.0520.678
mi_learn0.8080.0400.851
nnmf0.0640.0040.069
nscentroids0.1420.0000.143
peakwidths0.0010.0000.001
pinv0.0020.0000.002
plot_signal0.5850.0320.619
pls0.0570.0080.065
prcomp0.1530.0040.158
predscore0.0020.0000.002
rescale000
rocscore0.0040.0000.004
rollvec0.0010.0000.002
rowDists0.1170.0000.118
rowStats0.1510.0360.186
seq_rel0.0010.0000.001
sgmix4.2960.1674.476
shingles0.0000.0030.003
simple_logger-class0.0070.0000.006
simspec0.0430.0000.044
sparse_arr-class0.0090.0000.009
stream_stat0.0050.0030.009
struct0.0100.0000.009
summary-stats0.4760.0040.481
to_raster0.0040.0000.004
trans2d0.0460.0000.047
uuid0.0010.0000.001
vizi-functions0.0700.0040.075
warp10.0420.0080.050
warp21.1170.0161.135