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

This page was generated on 2026-03-21 11:34 -0400 (Sat, 21 Mar 2026).

HostnameOSArch (*)R versionInstalled pkgs
nebbiolo1Linux (Ubuntu 24.04.3 LTS)x86_64R Under development (unstable) (2026-03-05 r89546) -- "Unsuffered Consequences" 4866
kjohnson3macOS 13.7.7 Venturaarm64R Under development (unstable) (2026-03-20 r89666) -- "Unsuffered Consequences" 4545
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 1211/2368HostnameOS / ArchINSTALLBUILDCHECKBUILD BIN
matter 2.13.3  (landing page)
Kylie A. Bemis
Snapshot Date: 2026-03-20 13:40 -0400 (Fri, 20 Mar 2026)
git_url: https://git.bioconductor.org/packages/matter
git_branch: devel
git_last_commit: ab71848
git_last_commit_date: 2026-03-12 10:48:46 -0400 (Thu, 12 Mar 2026)
nebbiolo1Linux (Ubuntu 24.04.3 LTS) / x86_64  OK    OK    WARNINGS  UNNEEDED, same version is already published
kjohnson3macOS 13.7.7 Ventura / arm64  OK    OK    WARNINGS    ERROR  
See other builds for matter in R Universe.


INSTALL results for matter on kjohnson3

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.

raw results


Summary

Package: matter
Version: 2.13.3
Command: /Library/Frameworks/R.framework/Resources/bin/R CMD INSTALL matter
StartedAt: 2026-03-20 17:51:50 -0400 (Fri, 20 Mar 2026)
EndedAt: 2026-03-20 17:52:06 -0400 (Fri, 20 Mar 2026)
EllapsedTime: 15.6 seconds
RetCode: 0
Status:   OK  

Command output

##############################################################################
##############################################################################
###
### Running command:
###
###   /Library/Frameworks/R.framework/Resources/bin/R CMD INSTALL matter
###
##############################################################################
##############################################################################


* installing to library ‘/Library/Frameworks/R.framework/Versions/4.6/Resources/library’
* installing *source* package ‘matter’ ...
** this is package ‘matter’ version ‘2.13.3’
** using staged installation
** libs
using C++ compiler: ‘Apple clang version 17.0.0 (clang-1700.6.4.2)’
using SDK: ‘MacOSX26.2.sdk’
clang++ -arch arm64 -std=gnu++20 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.6/Resources/library/BH/include' -I/opt/R/arm64/include    -fPIC  -falign-functions=64 -Wall -g -O2   -c altrep.cpp -o altrep.o
In file included from altrep.cpp:2:
./matterDefines.h:365:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  365 |                         int s1 [rank()], s2 [rank()];
      |                                 ^~~~~~
./matterDefines.h:365:12: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:365:25: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  365 |                         int s1 [rank()], s2 [rank()];
      |                                              ^~~~~~
./matterDefines.h:365:25: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:366:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  366 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./matterDefines.h:366:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:390:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  390 |                         index_t s1 [rank()];
      |                                     ^~~~~~
./matterDefines.h:390:16: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:391:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  391 |                         index_t s2 [rank()];
      |                                     ^~~~~~
./matterDefines.h:391:16: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:392:21: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  392 |                         index_t arr_ind [rank()];
      |                                          ^~~~~~
./matterDefines.h:392:21: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:492:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  492 |                                         char s [dim(i)];
      |                                                 ^~~~~~
./matter.h:492:14: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matter.h:572:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  572 |                                         char s [LENGTH(j)];
      |                                                 ^~~~~~~~~
./matter.h:572:21: note: function parameter 'j' with unknown value cannot be used in a constant expression
  572 |                                         char s [LENGTH(j)];
      |                                                        ^
./matter.h:547:28: note: declared here
  547 |                 SEXP get(index_t i, SEXP j)
      |                                          ^
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:153:6: note: in instantiation of function template specialization 'MatterArray::get_region<unsigned char>' requested here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<unsigned char>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:153:6: note: in instantiation of function template specialization 'MatterArray::get_region<unsigned char>' requested here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:157:6: note: in instantiation of function template specialization 'MatterArray::get_region<int>' requested here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<int>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:157:6: note: in instantiation of function template specialization 'MatterArray::get_region<int>' requested here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:165:6: note: in instantiation of function template specialization 'MatterArray::get_region<double>' requested here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<double>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:165:6: note: in instantiation of function template specialization 'MatterArray::get_region<double>' requested here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:184:6: note: in instantiation of function template specialization 'MatterArray::set_region<unsigned char>' requested here
  184 |                                         set_region(i, size, RAW(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:187:6: note: in instantiation of function template specialization 'MatterArray::set_region<int>' requested here
  187 |                                         set_region(i, size, LOGICAL(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:193:6: note: in instantiation of function template specialization 'MatterArray::set_region<double>' requested here
  193 |                                         set_region(i, size, REAL(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:209:6: note: in instantiation of function template specialization 'MatterArray::get_elements<unsigned char>' requested here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<unsigned char>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:209:6: note: in instantiation of function template specialization 'MatterArray::get_elements<unsigned char>' requested here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:213:6: note: in instantiation of function template specialization 'MatterArray::get_elements<int>' requested here
  213 |                                         get_elements(indx, LOGICAL(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<int>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:213:6: note: in instantiation of function template specialization 'MatterArray::get_elements<int>' requested here
  213 |                                         get_elements(indx, LOGICAL(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:221:6: note: in instantiation of function template specialization 'MatterArray::get_elements<double>' requested here
  221 |                                         get_elements(indx, REAL(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from altrep.cpp:3:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<double>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:221:6: note: in instantiation of function template specialization 'MatterArray::get_elements<double>' requested here
  221 |                                         get_elements(indx, REAL(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from altrep.cpp:3:
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:242:6: note: in instantiation of function template specialization 'MatterArray::set_elements<unsigned char>' requested here
  242 |                                         set_elements(indx, RAW(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:245:6: note: in instantiation of function template specialization 'MatterArray::set_elements<int>' requested here
  245 |                                         set_elements(indx, LOGICAL(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:251:6: note: in instantiation of function template specialization 'MatterArray::set_elements<double>' requested here
  251 |                                         set_elements(indx, REAL(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
40 warnings generated.
clang++ -arch arm64 -std=gnu++20 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.6/Resources/library/BH/include' -I/opt/R/arm64/include    -fPIC  -falign-functions=64 -Wall -g -O2   -c init.cpp -o init.o
In file included from init.cpp:4:
In file included from ./matterExports.h:4:
In file included from ./drle.h:4:
./matterDefines.h:365:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  365 |                         int s1 [rank()], s2 [rank()];
      |                                 ^~~~~~
./matterDefines.h:365:12: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:365:25: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  365 |                         int s1 [rank()], s2 [rank()];
      |                                              ^~~~~~
./matterDefines.h:365:25: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:366:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  366 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./matterDefines.h:366:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:390:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  390 |                         index_t s1 [rank()];
      |                                     ^~~~~~
./matterDefines.h:390:16: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:391:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  391 |                         index_t s2 [rank()];
      |                                     ^~~~~~
./matterDefines.h:391:16: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:392:21: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  392 |                         index_t arr_ind [rank()];
      |                                          ^~~~~~
./matterDefines.h:392:21: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:492:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  492 |                                         char s [dim(i)];
      |                                                 ^~~~~~
./matter.h:492:14: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matter.h:572:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  572 |                                         char s [LENGTH(j)];
      |                                                 ^~~~~~~~~
./matter.h:572:21: note: function parameter 'j' with unknown value cannot be used in a constant expression
  572 |                                         char s [LENGTH(j)];
      |                                                        ^
./matter.h:547:28: note: declared here
  547 |                 SEXP get(index_t i, SEXP j)
      |                                          ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:471:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  471 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:471:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:470:6: note: declared here
  470 |         int stack_size = 8 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:573:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  573 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:573:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:572:6: note: declared here
  572 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:632:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  632 |         double best [knn];
      |                      ^~~
./search.h:632:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:625:56: note: declared here
  625 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:640:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  640 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:640:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:639:6: note: declared here
  639 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:698:8: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  698 |         T xi [k];
      |               ^
./search.h:698:8: note: function parameter 'k' with unknown value cannot be used in a constant expression
./search.h:694:55: note: declared here
  694 | void do_knn_search(int * ptr, T * x, T * data, size_t k, size_t nx, size_t ndata,
      |                                                       ^
./search.h:699:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  699 |         int nn [knn];
      |                 ^~~
./search.h:699:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:695:56: note: declared here
  695 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:721:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  721 |         double best [knn];
      |                      ^~~
./search.h:721:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:714:57: note: declared here
  714 |         int * left_child, int * right_child, int * parent, int knn,
      |                                                                ^
./search.h:735:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  735 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:735:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:734:6: note: declared here
  734 |         int stack_size = 2 * 3 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:824:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  824 |         int nn [knn];
      |                 ^~~
./search.h:824:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:821:43: note: declared here
  821 |         int * left_child, int * right_child, int knn,
      |                                                  ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:753:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  753 |         double xi [ny], ti0, ti1, tj, t;
      |                    ^~
./signal.h:753:13: note: function parameter 'ny' with unknown value cannot be used in a constant expression
./signal.h:749:45: note: declared here
  749 | double icor(T * x, T * y, size_t nx, size_t ny)
      |                                             ^
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from init.cpp:4:
In file included from ./matterExports.h:12:
./signal2.h:809:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:809:15: note: function parameter 'n' with unknown value cannot be used in a constant expression
./signal2.h:802:21: note: declared here
  802 |         int * indx, size_t n, double tol[2], int tol_ref, int interp = EST_NEAR)
      |                            ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:153:6: note: in instantiation of function template specialization 'MatterArray::get_region<unsigned char>' requested here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<unsigned char>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:153:6: note: in instantiation of function template specialization 'MatterArray::get_region<unsigned char>' requested here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:157:6: note: in instantiation of function template specialization 'MatterArray::get_region<int>' requested here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<int>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:157:6: note: in instantiation of function template specialization 'MatterArray::get_region<int>' requested here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:165:6: note: in instantiation of function template specialization 'MatterArray::get_region<double>' requested here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<double>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:165:6: note: in instantiation of function template specialization 'MatterArray::get_region<double>' requested here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:184:6: note: in instantiation of function template specialization 'MatterArray::set_region<unsigned char>' requested here
  184 |                                         set_region(i, size, RAW(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:187:6: note: in instantiation of function template specialization 'MatterArray::set_region<int>' requested here
  187 |                                         set_region(i, size, LOGICAL(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:193:6: note: in instantiation of function template specialization 'MatterArray::set_region<double>' requested here
  193 |                                         set_region(i, size, REAL(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:209:6: note: in instantiation of function template specialization 'MatterArray::get_elements<unsigned char>' requested here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<unsigned char>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:209:6: note: in instantiation of function template specialization 'MatterArray::get_elements<unsigned char>' requested here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:213:6: note: in instantiation of function template specialization 'MatterArray::get_elements<int>' requested here
  213 |                                         get_elements(indx, LOGICAL(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<int>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:213:6: note: in instantiation of function template specialization 'MatterArray::get_elements<int>' requested here
  213 |                                         get_elements(indx, LOGICAL(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:221:6: note: in instantiation of function template specialization 'MatterArray::get_elements<double>' requested here
  221 |                                         get_elements(indx, REAL(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<double>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:221:6: note: in instantiation of function template specialization 'MatterArray::get_elements<double>' requested here
  221 |                                         get_elements(indx, REAL(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from init.cpp:4:
In file included from ./matterExports.h:6:
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:242:6: note: in instantiation of function template specialization 'MatterArray::set_elements<unsigned char>' requested here
  242 |                                         set_elements(indx, RAW(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:245:6: note: in instantiation of function template specialization 'MatterArray::set_elements<int>' requested here
  245 |                                         set_elements(indx, LOGICAL(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:251:6: note: in instantiation of function template specialization 'MatterArray::set_elements<double>' requested here
  251 |                                         set_elements(indx, REAL(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<int, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<int, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:404:8: note: in instantiation of function template specialization 'SparseArray::get_region<int, int>' requested here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<int, int>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<int, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<int, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:404:8: note: in instantiation of function template specialization 'SparseArray::get_region<int, int>' requested here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<double, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<double, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:407:8: note: in instantiation of function template specialization 'SparseArray::get_region<double, int>' requested here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<double, int>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<double, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<double, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:407:8: note: in instantiation of function template specialization 'SparseArray::get_region<double, int>' requested here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<int, double, double>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<int, double>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:417:8: note: in instantiation of function template specialization 'SparseArray::get_region<int, double>' requested here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<int, double>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<int, double, double>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<int, double>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:417:8: note: in instantiation of function template specialization 'SparseArray::get_region<int, double>' requested here
  417 |                                                         get_region<int,double>(i, size, REAL(x));
      |                                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<double, double, double>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<double, double>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:420:8: note: in instantiation of function template specialization 'SparseArray::get_region<double, double>' requested here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from init.cpp:4:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<double, double>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<double, double, double>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<double, double>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:420:8: note: in instantiation of function template specialization 'SparseArray::get_region<double, double>' requested here
  420 |                                                         get_region<double,double>(i, size, REAL(x));
      |                                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
61 warnings generated.
clang++ -arch arm64 -std=gnu++20 -I"/Library/Frameworks/R.framework/Resources/include" -DNDEBUG  -I'/Library/Frameworks/R.framework/Versions/4.6/Resources/library/BH/include' -I/opt/R/arm64/include    -fPIC  -falign-functions=64 -Wall -g -O2   -c matterExports.cpp -o matterExports.o
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:4:
In file included from ./drle.h:4:
./matterDefines.h:365:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  365 |                         int s1 [rank()], s2 [rank()];
      |                                 ^~~~~~
./matterDefines.h:365:12: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:365:25: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  365 |                         int s1 [rank()], s2 [rank()];
      |                                              ^~~~~~
./matterDefines.h:365:25: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:366:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  366 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./matterDefines.h:366:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:390:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  390 |                         index_t s1 [rank()];
      |                                     ^~~~~~
./matterDefines.h:390:16: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:391:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  391 |                         index_t s2 [rank()];
      |                                     ^~~~~~
./matterDefines.h:391:16: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matterDefines.h:392:21: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  392 |                         index_t arr_ind [rank()];
      |                                          ^~~~~~
./matterDefines.h:392:21: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:492:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  492 |                                         char s [dim(i)];
      |                                                 ^~~~~~
./matter.h:492:14: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
./matter.h:572:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  572 |                                         char s [LENGTH(j)];
      |                                                 ^~~~~~~~~
./matter.h:572:21: note: function parameter 'j' with unknown value cannot be used in a constant expression
  572 |                                         char s [LENGTH(j)];
      |                                                        ^
./matter.h:547:28: note: declared here
  547 |                 SEXP get(index_t i, SEXP j)
      |                                          ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:471:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  471 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:471:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:470:6: note: declared here
  470 |         int stack_size = 8 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:573:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  573 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:573:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:572:6: note: declared here
  572 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:632:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  632 |         double best [knn];
      |                      ^~~
./search.h:632:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:625:56: note: declared here
  625 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:640:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  640 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:640:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:639:6: note: declared here
  639 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:698:8: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  698 |         T xi [k];
      |               ^
./search.h:698:8: note: function parameter 'k' with unknown value cannot be used in a constant expression
./search.h:694:55: note: declared here
  694 | void do_knn_search(int * ptr, T * x, T * data, size_t k, size_t nx, size_t ndata,
      |                                                       ^
./search.h:699:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  699 |         int nn [knn];
      |                 ^~~
./search.h:699:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:695:56: note: declared here
  695 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:721:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  721 |         double best [knn];
      |                      ^~~
./search.h:721:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:714:57: note: declared here
  714 |         int * left_child, int * right_child, int * parent, int knn,
      |                                                                ^
./search.h:735:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  735 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:735:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:734:6: note: declared here
  734 |         int stack_size = 2 * 3 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:824:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  824 |         int nn [knn];
      |                 ^~~
./search.h:824:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:821:43: note: declared here
  821 |         int * left_child, int * right_child, int knn,
      |                                                  ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:753:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  753 |         double xi [ny], ti0, ti1, tj, t;
      |                    ^~
./signal.h:753:13: note: function parameter 'ny' with unknown value cannot be used in a constant expression
./signal.h:749:45: note: declared here
  749 | double icor(T * x, T * y, size_t nx, size_t ny)
      |                                             ^
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:12:
./signal2.h:809:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:809:15: note: function parameter 'n' with unknown value cannot be used in a constant expression
./signal2.h:802:21: note: declared here
  802 |         int * indx, size_t n, double tol[2], int tol_ref, int interp = EST_NEAR)
      |                            ^
matterExports.cpp:225:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  225 |                                 int xi [k];
      |                                         ^
matterExports.cpp:225:13: note: read of non-const variable 'k' is not allowed in a constant expression
matterExports.cpp:213:9: note: declared here
  213 |         size_t k = Rf_ncols(data);
      |                ^
matterExports.cpp:235:16: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  235 |                                 double xi [k];
      |                                            ^
matterExports.cpp:235:16: note: read of non-const variable 'k' is not allowed in a constant expression
matterExports.cpp:213:9: note: declared here
  213 |         size_t k = Rf_ncols(data);
      |                ^
matterExports.cpp:374:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  374 |                 int xrows [ni];
      |                            ^~
matterExports.cpp:374:14: note: read of non-const variable 'ni' is not allowed in a constant expression
matterExports.cpp:373:15: note: declared here
  373 |                 int ix, iy, ni = LENGTH(indx);
      |                             ^
matterExports.cpp:375:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  375 |                 int yrows [ni];
      |                            ^~
matterExports.cpp:375:14: note: read of non-const variable 'ni' is not allowed in a constant expression
matterExports.cpp:373:15: note: declared here
  373 |                 int ix, iy, ni = LENGTH(indx);
      |                             ^
matterExports.cpp:418:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  418 |                 int xcols [ni];
      |                            ^~
matterExports.cpp:418:14: note: read of non-const variable 'ni' is not allowed in a constant expression
matterExports.cpp:417:15: note: declared here
  417 |                 int ix, iy, ni = LENGTH(indx);
      |                             ^
matterExports.cpp:419:14: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  419 |                 int ycols [ni];
      |                            ^~
matterExports.cpp:419:14: note: read of non-const variable 'ni' is not allowed in a constant expression
matterExports.cpp:417:15: note: declared here
  417 |                 int ix, iy, ni = LENGTH(indx);
      |                             ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:153:6: note: in instantiation of function template specialization 'MatterArray::get_region<unsigned char>' requested here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<unsigned char>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:153:6: note: in instantiation of function template specialization 'MatterArray::get_region<unsigned char>' requested here
  153 |                                         get_region(i, size, RAW(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:157:6: note: in instantiation of function template specialization 'MatterArray::get_region<int>' requested here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<int>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:157:6: note: in instantiation of function template specialization 'MatterArray::get_region<int>' requested here
  157 |                                         get_region(i, size, LOGICAL(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:76:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   76 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:165:6: note: in instantiation of function template specialization 'MatterArray::get_region<double>' requested here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ^
./matter.h:76:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   76 |                                 index_t tindx [size];
      |                                                ^
./matter.h:70:39: note: declared here
   70 |                 size_t get_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:179:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  179 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:83:12: note: in instantiation of function template specialization 'DeferredOps::apply<double>' requested here
   83 |                                 ops()->apply<T>(buffer, i, size, stride);
      |                                        ^
./matter.h:165:6: note: in instantiation of function template specialization 'MatterArray::get_region<double>' requested here
  165 |                                         get_region(i, size, REAL(x));
      |                                         ^
./ops.h:179:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  179 |                         int s [rank()];
      |                                ^
./ops.h:180:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  180 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:180:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:184:6: note: in instantiation of function template specialization 'MatterArray::set_region<unsigned char>' requested here
  184 |                                         set_region(i, size, RAW(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:187:6: note: in instantiation of function template specialization 'MatterArray::set_region<int>' requested here
  187 |                                         set_region(i, size, LOGICAL(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:99:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
   99 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:193:6: note: in instantiation of function template specialization 'MatterArray::set_region<double>' requested here
  193 |                                         set_region(i, size, REAL(value), stride);
      |                                         ^
./matter.h:99:20: note: function parameter 'size' with unknown value cannot be used in a constant expression
   99 |                                 index_t tindx [size];
      |                                                ^
./matter.h:89:39: note: declared here
   89 |                 size_t set_region(index_t i, size_t size, T * buffer, int stride = 1)
      |                                                     ^
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:209:6: note: in instantiation of function template specialization 'MatterArray::get_elements<unsigned char>' requested here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<unsigned char>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:209:6: note: in instantiation of function template specialization 'MatterArray::get_elements<unsigned char>' requested here
  209 |                                         get_elements(indx, RAW(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:213:6: note: in instantiation of function template specialization 'MatterArray::get_elements<int>' requested here
  213 |                                         get_elements(indx, LOGICAL(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<int>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:213:6: note: in instantiation of function template specialization 'MatterArray::get_elements<int>' requested here
  213 |                                         get_elements(indx, LOGICAL(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:115:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  115 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:221:6: note: in instantiation of function template specialization 'MatterArray::get_elements<double>' requested here
  221 |                                         get_elements(indx, REAL(x));
      |                                         ^
./matter.h:115:20: note: read of non-const variable 'size' is not allowed in a constant expression
  115 |                                 index_t tindx [size];
      |                                                ^
./matter.h:112:13: note: declared here
  112 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
In file included from ./matter.h:6:
./ops.h:231:11: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  231 |                         int s [rank()];
      |                                ^~~~~~
./matter.h:122:12: note: in instantiation of function template specialization 'DeferredOps::apply<double>' requested here
  122 |                                 ops()->apply<T>(buffer, indx, stride);
      |                                        ^
./matter.h:221:6: note: in instantiation of function template specialization 'MatterArray::get_elements<double>' requested here
  221 |                                         get_elements(indx, REAL(x));
      |                                         ^
./ops.h:231:11: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
  231 |                         int s [rank()];
      |                                ^
./ops.h:232:17: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  232 |                         int arr_ind [rank()];
      |                                      ^~~~~~
./ops.h:232:17: note: implicit use of 'this' pointer is only allowed within the evaluation of a call to a 'constexpr' member function
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:6:
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:242:6: note: in instantiation of function template specialization 'MatterArray::set_elements<unsigned char>' requested here
  242 |                                         set_elements(indx, RAW(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:245:6: note: in instantiation of function template specialization 'MatterArray::set_elements<int>' requested here
  245 |                                         set_elements(indx, LOGICAL(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
./matter.h:137:20: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  137 |                                 index_t tindx [size];
      |                                                ^~~~
./matter.h:251:6: note: in instantiation of function template specialization 'MatterArray::set_elements<double>' requested here
  251 |                                         set_elements(indx, REAL(value), stride);
      |                                         ^
./matter.h:137:20: note: read of non-const variable 'size' is not allowed in a constant expression
  137 |                                 index_t tindx [size];
      |                                                ^
./matter.h:134:13: note: declared here
  134 |                         R_xlen_t size = XLENGTH(indx);
      |                                  ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<int, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<int, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:404:8: note: in instantiation of function template specialization 'SparseArray::get_region<int, int>' requested here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<int, int>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<int, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<int, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:404:8: note: in instantiation of function template specialization 'SparseArray::get_region<int, int>' requested here
  404 |                                                         get_region<int,int>(i, size, INTEGER(x));
      |                                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<double, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<double, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:407:8: note: in instantiation of function template specialization 'SparseArray::get_region<double, int>' requested here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<double, int>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
./sparse.h:319:11: note: in instantiation of function template specialization 'do_approx1<double, int, int>' requested here
  319 |                                 nnz = do_approx1<Tind,Tval>(buffer, subscripts, size,
      |                                       ^
./sparse.h:373:11: note: in instantiation of function template specialization 'SparseArray::get_compressed_region<double, int>' requested here
  373 |                                 nnz = get_compressed_region<Tind,Tval>(0, i, size, buffer, stride);
      |                                       ^
./sparse.h:407:8: note: in instantiation of function template specialization 'SparseArray::get_region<double, int>' requested here
  407 |                                                         get_region<double,int>(i, size, INTEGER(x));
      |                                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:258:2: note: in instantiation of function template specialization 'quick_sort<SEXPREC *, int>' requested here
  258 |         quick_sort(dup, 0, n, ptr);
      |         ^
matterExports.cpp:71:4: note: in instantiation of function template specialization 'do_quick_sort<SEXPREC *>' requested here
   71 |                         do_quick_sort(INTEGER(indx), STRING_PTR(x), 0, XLENGTH(x), true);
      |                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:471:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  471 |         int stack [stack_size];
      |                    ^~~~~~~~~~
matterExports.cpp:192:11: note: in instantiation of function template specialization 'kd_tree_build<int>' requested here
  192 |                         root = kd_tree_build(INTEGER(x), k, n,
      |                                ^
./search.h:471:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  471 |         int stack [stack_size];
      |                    ^
./search.h:470:6: note: declared here
  470 |         int stack_size = 8 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:471:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  471 |         int stack [stack_size];
      |                    ^~~~~~~~~~
matterExports.cpp:196:11: note: in instantiation of function template specialization 'kd_tree_build<double>' requested here
  196 |                         root = kd_tree_build(REAL(x), k, n,
      |                                ^
./search.h:471:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  471 |         int stack [stack_size];
      |                    ^
./search.h:470:6: note: declared here
  470 |         int stack_size = 8 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:573:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  573 |         int stack [stack_size];
      |                    ^~~~~~~~~~
matterExports.cpp:228:11: note: in instantiation of function template specialization 'kd_tree_search<int>' requested here
  228 |                                 nnb = kd_tree_search(INTEGER(buffer), xi, INTEGER(data), k, ndata,
      |                                       ^
./search.h:573:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  573 |         int stack [stack_size];
      |                    ^
./search.h:572:6: note: declared here
  572 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:615:2: note: in instantiation of function template specialization 'quick_sort<int, void *>' requested here
  615 |         quick_sort<int,void*>(ptr, 0, num_matches);
      |         ^
matterExports.cpp:228:11: note: in instantiation of function template specialization 'kd_tree_search<int>' requested here
  228 |                                 nnb = kd_tree_search(INTEGER(buffer), xi, INTEGER(data), k, ndata,
      |                                       ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:573:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  573 |         int stack [stack_size];
      |                    ^~~~~~~~~~
matterExports.cpp:238:11: note: in instantiation of function template specialization 'kd_tree_search<double>' requested here
  238 |                                 nnb = kd_tree_search(INTEGER(buffer), xi, REAL(data), k, ndata,
      |                                       ^
./search.h:573:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  573 |         int stack [stack_size];
      |                    ^
./search.h:572:6: note: declared here
  572 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:698:8: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  698 |         T xi [k];
      |               ^
matterExports.cpp:266:4: note: in instantiation of function template specialization 'do_knn_search<int>' requested here
  266 |                         do_knn_search(INTEGER(result), INTEGER(x), INTEGER(data), k, nx, ndata,
      |                         ^
./search.h:698:8: note: function parameter 'k' with unknown value cannot be used in a constant expression
  698 |         T xi [k];
      |               ^
./search.h:694:55: note: declared here
  694 | void do_knn_search(int * ptr, T * x, T * data, size_t k, size_t nx, size_t ndata,
      |                                                       ^
./search.h:699:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  699 |         int nn [knn];
      |                 ^~~
./search.h:699:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:695:56: note: declared here
  695 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:632:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  632 |         double best [knn];
      |                      ^~~
./search.h:704:3: note: in instantiation of function template specialization 'knn_search<int>' requested here
  704 |                 knn_search(nn, xi, data, k, ndata,
      |                 ^
matterExports.cpp:266:4: note: in instantiation of function template specialization 'do_knn_search<int>' requested here
  266 |                         do_knn_search(INTEGER(result), INTEGER(x), INTEGER(data), k, nx, ndata,
      |                         ^
./search.h:632:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
  632 |         double best [knn];
      |                      ^
./search.h:625:56: note: declared here
  625 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:640:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  640 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:640:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:639:6: note: declared here
  639 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:698:8: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  698 |         T xi [k];
      |               ^
matterExports.cpp:271:4: note: in instantiation of function template specialization 'do_knn_search<double>' requested here
  271 |                         do_knn_search(INTEGER(result), REAL(x), REAL(data), k, nx, ndata,
      |                         ^
./search.h:698:8: note: function parameter 'k' with unknown value cannot be used in a constant expression
  698 |         T xi [k];
      |               ^
./search.h:694:55: note: declared here
  694 | void do_knn_search(int * ptr, T * x, T * data, size_t k, size_t nx, size_t ndata,
      |                                                       ^
./search.h:699:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  699 |         int nn [knn];
      |                 ^~~
./search.h:699:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
./search.h:695:56: note: declared here
  695 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:632:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  632 |         double best [knn];
      |                      ^~~
./search.h:704:3: note: in instantiation of function template specialization 'knn_search<double>' requested here
  704 |                 knn_search(nn, xi, data, k, ndata,
      |                 ^
matterExports.cpp:271:4: note: in instantiation of function template specialization 'do_knn_search<double>' requested here
  271 |                         do_knn_search(INTEGER(result), REAL(x), REAL(data), k, nx, ndata,
      |                         ^
./search.h:632:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
  632 |         double best [knn];
      |                      ^
./search.h:625:56: note: declared here
  625 |         int * left_child, int * right_child, size_t root, int knn,
      |                                                               ^
./search.h:640:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  640 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:640:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:639:6: note: declared here
  639 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:824:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  824 |         int nn [knn];
      |                 ^~~
matterExports.cpp:291:4: note: in instantiation of function template specialization 'do_knn_self_search<int>' requested here
  291 |                         do_knn_self_search(INTEGER(result), INTEGER(x), k, n,
      |                         ^
./search.h:824:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
  824 |         int nn [knn];
      |                 ^
./search.h:821:43: note: declared here
  821 |         int * left_child, int * right_child, int knn,
      |                                                  ^
./search.h:721:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  721 |         double best [knn];
      |                      ^~~
./search.h:837:3: note: in instantiation of function template specialization 'knn_self_search<int>' requested here
  837 |                 knn_self_search(nn, i, data, k, n,
      |                 ^
matterExports.cpp:291:4: note: in instantiation of function template specialization 'do_knn_self_search<int>' requested here
  291 |                         do_knn_self_search(INTEGER(result), INTEGER(x), k, n,
      |                         ^
./search.h:721:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
  721 |         double best [knn];
      |                      ^
./search.h:714:57: note: declared here
  714 |         int * left_child, int * right_child, int * parent, int knn,
      |                                                                ^
./search.h:735:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  735 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:735:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:734:6: note: declared here
  734 |         int stack_size = 2 * 3 * std::ceil(std::log2(n) + 1);
      |             ^
./search.h:824:10: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  824 |         int nn [knn];
      |                 ^~~
matterExports.cpp:296:4: note: in instantiation of function template specialization 'do_knn_self_search<double>' requested here
  296 |                         do_knn_self_search(INTEGER(result), REAL(x), k, n,
      |                         ^
./search.h:824:10: note: function parameter 'knn' with unknown value cannot be used in a constant expression
  824 |         int nn [knn];
      |                 ^
./search.h:821:43: note: declared here
  821 |         int * left_child, int * right_child, int knn,
      |                                                  ^
./search.h:721:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  721 |         double best [knn];
      |                      ^~~
./search.h:837:3: note: in instantiation of function template specialization 'knn_self_search<double>' requested here
  837 |                 knn_self_search(nn, i, data, k, n,
      |                 ^
matterExports.cpp:296:4: note: in instantiation of function template specialization 'do_knn_self_search<double>' requested here
  296 |                         do_knn_self_search(INTEGER(result), REAL(x), k, n,
      |                         ^
./search.h:721:15: note: function parameter 'knn' with unknown value cannot be used in a constant expression
  721 |         double best [knn];
      |                      ^
./search.h:714:57: note: declared here
  714 |         int * left_child, int * right_child, int * parent, int knn,
      |                                                                ^
./search.h:735:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  735 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./search.h:735:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
./search.h:734:6: note: declared here
  734 |         int stack_size = 2 * 3 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:753:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  753 |         double xi [ny], ti0, ti1, tj, t;
      |                    ^~
matterExports.cpp:823:25: note: in instantiation of function template specialization 'icor<int>' requested here
  823 |                         return Rf_ScalarReal(icor(INTEGER(x), INTEGER(y),
      |                                              ^
./signal.h:753:13: note: function parameter 'ny' with unknown value cannot be used in a constant expression
  753 |         double xi [ny], ti0, ti1, tj, t;
      |                    ^
./signal.h:749:45: note: declared here
  749 | double icor(T * x, T * y, size_t nx, size_t ny)
      |                                             ^
./signal.h:753:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  753 |         double xi [ny], ti0, ti1, tj, t;
      |                    ^~
matterExports.cpp:827:25: note: in instantiation of function template specialization 'icor<double>' requested here
  827 |                         return Rf_ScalarReal(icor(REAL(x), REAL(y),
      |                                              ^
./signal.h:753:13: note: function parameter 'ny' with unknown value cannot be used in a constant expression
  753 |         double xi [ny], ti0, ti1, tj, t;
      |                    ^
./signal.h:749:45: note: declared here
  749 | double icor(T * x, T * y, size_t nx, size_t ny)
      |                                             ^
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
matterExports.cpp:1199:6: note: in instantiation of function template specialization 'do_approx1<int, int, double>' requested here
 1199 |                                         do_approx1<int,int>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
matterExports.cpp:1205:6: note: in instantiation of function template specialization 'do_approx1<double, int, double>' requested here
 1205 |                                         do_approx1<double,int>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
matterExports.cpp:1217:6: note: in instantiation of function template specialization 'do_approx1<int, double, double>' requested here
 1217 |                                         do_approx1<int,double>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<int, double>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
matterExports.cpp:1217:6: note: in instantiation of function template specialization 'do_approx1<int, double, double>' requested here
 1217 |                                         do_approx1<int,double>(REAL(result), INTEGER(xi), LENGTH(xi),
      |                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
./signal.h:1670:12: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
 1670 |                 int indx[end - start], new_ref;
      |                          ^~~~~~~~~~~
matterExports.cpp:1223:6: note: in instantiation of function template specialization 'do_approx1<double, double, double>' requested here
 1223 |                                         do_approx1<double,double>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ^
./signal.h:1670:12: note: function parameter 'end' with unknown value cannot be used in a constant expression
 1670 |                 int indx[end - start], new_ref;
      |                          ^
./signal.h:1616:23: note: declared here
 1616 |         size_t start, size_t end, double tol, int tol_ref, Tout nomatch,
      |                              ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:7:
In file included from ./sparse.h:5:
In file included from ./signal.h:6:
./search.h:186:13: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  186 |         int stack [stack_size];
      |                    ^~~~~~~~~~
./signal.h:1647:3: note: in instantiation of function template specialization 'quick_sort<double, double>' requested here
 1647 |                 quick_sort(xs, start, end, ys);
      |                 ^
matterExports.cpp:1223:6: note: in instantiation of function template specialization 'do_approx1<double, double, double>' requested here
 1223 |                                         do_approx1<double,double>(REAL(result), REAL(xi), LENGTH(xi),
      |                                         ^
./search.h:186:13: note: read of non-const variable 'stack_size' is not allowed in a constant expression
  186 |         int stack [stack_size];
      |                    ^
./search.h:185:6: note: declared here
  185 |         int stack_size = 2 * std::ceil(std::log2(n) + 1);
      |             ^
In file included from matterExports.cpp:2:
In file included from ./matterExports.h:12:
./signal2.h:809:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:851:8: note: in instantiation of function template specialization 'interp2<int, int>' requested here
  851 |                 zi = interp2(xi, yi, x, y, z, indx, knn, tol, tol_ref, interp);
      |                      ^
./signal2.h:874:13: note: in instantiation of function template specialization 'approx2<int, int, double>' requested here
  874 |                 Tout zi = approx2(xi[i], yi[i], xy, z, indx, n,
      |                           ^
matterExports.cpp:1470:6: note: in instantiation of function template specialization 'do_approx2<int, int, double>' requested here
 1470 |                                         do_approx2<int,int>(REAL(result),
      |                                         ^
./signal2.h:809:15: note: function parameter 'n' with unknown value cannot be used in a constant expression
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:802:21: note: declared here
  802 |         int * indx, size_t n, double tol[2], int tol_ref, int interp = EST_NEAR)
      |                            ^
./signal2.h:809:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:851:8: note: in instantiation of function template specialization 'interp2<double, int>' requested here
  851 |                 zi = interp2(xi, yi, x, y, z, indx, knn, tol, tol_ref, interp);
      |                      ^
./signal2.h:874:13: note: in instantiation of function template specialization 'approx2<double, int, double>' requested here
  874 |                 Tout zi = approx2(xi[i], yi[i], xy, z, indx, n,
      |                           ^
matterExports.cpp:1477:6: note: in instantiation of function template specialization 'do_approx2<double, int, double>' requested here
 1477 |                                         do_approx2<double,int>(REAL(result),
      |                                         ^
./signal2.h:809:15: note: function parameter 'n' with unknown value cannot be used in a constant expression
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:802:21: note: declared here
  802 |         int * indx, size_t n, double tol[2], int tol_ref, int interp = EST_NEAR)
      |                            ^
./signal2.h:809:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:851:8: note: in instantiation of function template specialization 'interp2<int, double>' requested here
  851 |                 zi = interp2(xi, yi, x, y, z, indx, knn, tol, tol_ref, interp);
      |                      ^
./signal2.h:874:13: note: in instantiation of function template specialization 'approx2<int, double, double>' requested here
  874 |                 Tout zi = approx2(xi[i], yi[i], xy, z, indx, n,
      |                           ^
matterExports.cpp:1490:6: note: in instantiation of function template specialization 'do_approx2<int, double, double>' requested here
 1490 |                                         do_approx2<int,double>(REAL(result),
      |                                         ^
./signal2.h:809:15: note: function parameter 'n' with unknown value cannot be used in a constant expression
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:802:21: note: declared here
  802 |         int * indx, size_t n, double tol[2], int tol_ref, int interp = EST_NEAR)
      |                            ^
./signal2.h:809:15: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:851:8: note: in instantiation of function template specialization 'interp2<double, double>' requested here
  851 |                 zi = interp2(xi, yi, x, y, z, indx, knn, tol, tol_ref, interp);
      |                      ^
./signal2.h:874:13: note: in instantiation of function template specialization 'approx2<double, double, double>' requested here
  874 |                 Tout zi = approx2(xi[i], yi[i], xy, z, indx, n,
      |                           ^
matterExports.cpp:1497:6: note: in instantiation of function template specialization 'do_approx2<double, double, double>' requested here
 1497 |                                         do_approx2<double,double>(REAL(result),
      |                                         ^
./signal2.h:809:15: note: function parameter 'n' with unknown value cannot be used in a constant expression
  809 |                         double d2 [n];
      |                                    ^
./signal2.h:802:21: note: declared here
  802 |         int * indx, size_t n, double tol[2], int tol_ref, int interp = EST_NEAR)
      |                            ^
95 warnings generated.
clang++ -arch arm64 -std=gnu++20 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -L/Library/Frameworks/R.framework/Resources/lib -L/opt/R/arm64/lib -o matter.so altrep.o init.o matterExports.o -F/Library/Frameworks/R.framework/.. -framework R
installing to /Library/Frameworks/R.framework/Versions/4.6/Resources/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)