Actions
Bug #14668
closedRuby2.6.0-preview1とtrunkでnmatrixがコンパイルできない
Description
https://github.com/SciRuby/nmatrix
Ruby2.5.1 まではコンパイルできたのですが、Ruby2.6.0-preview1 および trunk(r63103) でコンパイルできませんでした。
trunk を使ってビルドしたときのログです。
$ cd nmatrix
$ bundle exec rake compile:nmatrix
cd tmp/x86_64-linux/nmatrix/2.6.0
/tmp/local/bin/ruby -I. ../../../../ext/nmatrix/extconf.rb
using C++ standard... c++11
g++ reports version... 7.3.0-14)
checking for rb_array_const_ptr() in ruby.h... yes
creating nmatrix_config.h
creating Makefile
cd -
cd tmp/x86_64-linux/nmatrix/2.6.0
/usr/bin/make
compiling ../../../../ext/nmatrix/nmatrix.cpp
cc1plus: warning: command line option ‘-Wimplicit-int’ is valid for C/ObjC but not for C++
In file included from ../../../../ext/nmatrix/nmatrix.cpp:46:0:
../../../../ext/nmatrix/math/math.h: In function ‘I nm::math::smmp_sort::median(I, I, I)’:
../../../../ext/nmatrix/math/math.h:341:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (a < c) return c; // a c b
^~
../../../../ext/nmatrix/math/math.h:342:18: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
return a; // c a b
^~~~~~
../../../../ext/nmatrix/math/math.h:346:7: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (b < c) return c; // b c a
^~
../../../../ext/nmatrix/math/math.h:347:18: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
return b; // c b a
^~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_init_new_version(int, VALUE*, VALUE)’:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1245:25: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* slice_argv = NM_ALLOCA_N(VALUE, dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1245:25: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* slice_argv = NM_ALLOCA_N(VALUE, dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1245:25: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* slice_argv = NM_ALLOCA_N(VALUE, dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1255:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1256:22: note: in expansion of macro ‘NM_ALLOCA_N’
slice->lengths = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_cast(VALUE, VALUE, VALUE, VALUE)’:
../../../../ext/nmatrix/ruby_nmatrix.c:1511:32: error: expected primary-expression before ‘char’
void* init_ptr = NM_ALLOCA_N(char, DTYPE_SIZES[new_dtype]);
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:22: note: in definition of macro ‘ALLOCA_N’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1511:20: note: in expansion of macro ‘NM_ALLOCA_N’
void* init_ptr = NM_ALLOCA_N(char, DTYPE_SIZES[new_dtype]);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1511:20: note: in expansion of macro ‘NM_ALLOCA_N’
void* init_ptr = NM_ALLOCA_N(char, DTYPE_SIZES[new_dtype]);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:1511:20: note: in expansion of macro ‘NM_ALLOCA_N’
void* init_ptr = NM_ALLOCA_N(char, DTYPE_SIZES[new_dtype]);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_mset(int, VALUE*, VALUE)’:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2014:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2014:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2014:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2015:22: note: in expansion of macro ‘NM_ALLOCA_N’
slice->lengths = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_shape(VALUE)’:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2132:18: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* shape = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2132:18: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* shape = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2132:18: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* shape = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_offset(VALUE)’:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2154:19: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* offset = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2154:19: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* offset = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2154:19: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* offset = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_supershape(VALUE)’:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2181:18: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* shape = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2181:18: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* shape = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2181:18: note: in expansion of macro ‘NM_ALLOCA_N’
VALUE* shape = NM_ALLOCA_N(VALUE, s->dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_xslice(int, VALUE*, void* (*)(const STORAGE*, SLICE*), void (*)(NMATRIX*), VALUE)’:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2258:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2258:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2258:21: note: in expansion of macro ‘NM_ALLOCA_N’
slice->coords = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:26: error: expected primary-expression before ‘)’ token
RUBY_ALIGNOF(type) * CHAR_BIT)
^
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2259:22: note: in expansion of macro ‘NM_ALLOCA_N’
slice->lengths = NM_ALLOCA_N(size_t, dim);
^~~~~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_inverse_exact(VALUE, VALUE, VALUE, VALUE)’:
../../../../ext/nmatrix/ruby_nmatrix.c:2965:30: error: expected primary-expression before ‘char’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:22: note: in definition of macro ‘ALLOCA_N’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2965:18: note: in expansion of macro ‘NM_ALLOCA_N’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2965:18: note: in expansion of macro ‘NM_ALLOCA_N’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:2965:18: note: in expansion of macro ‘NM_ALLOCA_N’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby.h:33:0,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
../../../../ext/nmatrix/ruby_nmatrix.c: In function ‘VALUE nm_det_exact(VALUE)’:
../../../../ext/nmatrix/ruby_nmatrix.c:3009:30: error: expected primary-expression before ‘char’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:22: note: in definition of macro ‘ALLOCA_N’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~
../../../../ext/nmatrix/ruby_nmatrix.c:3009:18: note: in expansion of macro ‘NM_ALLOCA_N’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^~~~~~~~~~~
In file included from /tmp/local/include/ruby-2.6.0/ruby/ruby.h:24:0,
from /tmp/local/include/ruby-2.6.0/ruby.h:33,
from ../../../../ext/nmatrix/nmatrix.cpp:35:
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: error: ‘_Alignof’ was not declared in this scope
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:3009:18: note: in expansion of macro ‘NM_ALLOCA_N’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^~~~~~~~~~~
/tmp/local/include/ruby-2.6.0/x86_64-linux/ruby/config.h:134:22: note: suggested alternative: ‘__lrintf’
#define RUBY_ALIGNOF _Alignof
^
/tmp/local/include/ruby-2.6.0/ruby/ruby.h:1613:9: note: in expansion of macro ‘RUBY_ALIGNOF’
RUBY_ALIGNOF(type) * CHAR_BIT)
^~~~~~~~~~~~
../../../../ext/nmatrix/nm_memory.h:44:31: note: in expansion of macro ‘ALLOCA_N’
#define NM_ALLOCA_N(type, n) (ALLOCA_N(type, n))
^~~~~~~~
../../../../ext/nmatrix/ruby_nmatrix.c:3009:18: note: in expansion of macro ‘NM_ALLOCA_N’
void* result = NM_ALLOCA_N(char, DTYPE_SIZES[dtype]);
^~~~~~~~~~~
At global scope:
cc1plus: warning: unrecognized command line option ‘-Wno-self-assign’
cc1plus: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1plus: warning: unrecognized command line option ‘-Wno-parentheses-equality’
make: *** [Makefile:250: nmatrix.o] エラー 1
rake aborted!
Command failed with status (2): [/usr/bin/make...]
/tmp/local/bin/bundle:23:in `load'
/tmp/local/bin/bundle:23:in `<main>'
Tasks: TOP => compile:nmatrix => compile:nmatrix:x86_64-linux => copy:nmatrix:x86_64-linux:2.6.0 => tmp/x86_64-linux/nmatrix/2.6.0/nmatrix.so
(See full trace by running task with --trace)
これは nmatrix 側で何か対応が必要でしょうか?対応が必要であれば、どのような変更をすればよいのか教えてもらえないでしょうか?
Actions
Like0
Like0Like0Like0Like0