Since upgrading to ruby 2.5.3, I'm no longer able to bundle the project. This is running on macOS 10.14.3
Fetching eventmachine 1.2.2
Installing eventmachine 1.2.2 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /Users/jeremywoertink/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/eventmachine-1.2.2/ext
/Users/jeremywoertink/.rbenv/versions/2.5.3/bin/ruby -r ./siteconf20190307-28876-e7b9dz.rb extconf.rb
checking for -lcrypto... yes
checking for -lssl... yes
checking for openssl/ssl.h... yes
checking for openssl/err.h... yes
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... no
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_fd_select()... yes
checking for rb_fdset_t in ruby/intern.h... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_enable_interrupt()... no
checking for rb_time_new()... yes
checking for inotify_init() in sys/inotify.h... no
checking for __NR_inotify_init in sys/syscall.h... no
checking for writev() in sys/uio.h... yes
checking for pipe2() in unistd.h... no
checking for accept4() in sys/socket.h... no
checking for SOCK_CLOEXEC in sys/socket.h... no
checking for sys/event.h... yes
checking for sys/queue.h... yes
checking for clock_gettime()... yes
checking for CLOCK_MONOTONIC_RAW in time.h... yes
checking for CLOCK_MONOTONIC in time.h... yes
CXXFLAGS=$(cxxflags) -Wall -Wextra -Wno-deprecated-declarations -Wno-ignored-qualifiers -Wno-unused-result -Wno-address
creating Makefile
current directory: /Users/jeremywoertink/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/eventmachine-1.2.2/ext
make "DESTDIR=" clean
current directory: /Users/jeremywoertink/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/eventmachine-1.2.2/ext
make "DESTDIR="
compiling binder.cpp
In file included from binder.cpp:20:
In file included from ./project.h:169:
./binder.h:35:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t GetBinding() {return Binding;}
^~~~~~
In file included from binder.cpp:20:
In file included from ./project.h:170:
In file included from ./em.h:24:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040:
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:19: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:36: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
In file included from binder.cpp:20:
In file included from ./project.h:170:
./em.h:145:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t InstallOneshotTimer (int);
^~~~~~
./em.h:146:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToServer (const char *, int, const char *, int);
^~~~~~
./em.h:147:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToUnixServer (const char *);
^~~~~~
./em.h:149:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateTcpServer (const char *, int);
^~~~~~
./em.h:150:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenDatagramSocket (const char *, int);
^~~~~~
./em.h:151:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateUnixDomainServer (const char*);
^~~~~~
./em.h:152:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachSD (SOCKET);
^~~~~~
./em.h:153:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenKeyboard();
^~~~~~
./em.h:155:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t Socketpair (char* const*);
^~~~~~
./em.h:161:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachFD (SOCKET, bool);
^~~~~~
./em.h:178:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchFile (const char*);
^~~~~~
./em.h:187:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchPid (int);
^~~~~~
In file included from binder.cpp:20:
In file included from ./project.h:174:
./eventmachine.h:54:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_install_oneshot_timer (int seconds);
^~~~~~
./eventmachine.h:55:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_server (const char *bind_addr, int bind_port, const char *server, int port);
^~~~~~
./eventmachine.h:56:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_unix_server (const char *server);
^~~~~~
./eventmachine.h:58:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_fd (int file_descriptor, int watch_mode);
^~~~~~
./eventmachine.h:73:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_tcp_server (const char *address, int port);
^~~~~~
./eventmachine.h:74:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_unix_domain_server (const char *filename);
^~~~~~
./eventmachine.h:75:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_sd (int sd);
^~~~~~
./eventmachine.h:76:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_datagram_socket (const char *server, int port);
^~~~~~
./eventmachine.h:77:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_keyboard();
^~~~~~
./eventmachine.h:119:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_popen (char * const*cmd_strings);
^~~~~~
./eventmachine.h:121:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_filename (const char *fname);
^~~~~~
./eventmachine.h:124:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_pid (int);
^~~~~~
27 warnings generated.
compiling cmain.cpp
In file included from cmain.cpp:20:
In file included from ./project.h:169:
./binder.h:35:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t GetBinding() {return Binding;}
^~~~~~
In file included from cmain.cpp:20:
In file included from ./project.h:170:
In file included from ./em.h:24:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040:
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:19: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:36: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
In file included from cmain.cpp:20:
In file included from ./project.h:170:
./em.h:145:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t InstallOneshotTimer (int);
^~~~~~
./em.h:146:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToServer (const char *, int, const char *, int);
^~~~~~
./em.h:147:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToUnixServer (const char *);
^~~~~~
./em.h:149:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateTcpServer (const char *, int);
^~~~~~
./em.h:150:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenDatagramSocket (const char *, int);
^~~~~~
./em.h:151:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateUnixDomainServer (const char*);
^~~~~~
./em.h:152:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachSD (SOCKET);
^~~~~~
./em.h:153:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenKeyboard();
^~~~~~
./em.h:155:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t Socketpair (char* const*);
^~~~~~
./em.h:161:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachFD (SOCKET, bool);
^~~~~~
./em.h:178:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchFile (const char*);
^~~~~~
./em.h:187:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchPid (int);
^~~~~~
In file included from cmain.cpp:20:
In file included from ./project.h:174:
./eventmachine.h:54:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_install_oneshot_timer (int seconds);
^~~~~~
./eventmachine.h:55:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_server (const char *bind_addr, int bind_port, const char *server, int port);
^~~~~~
./eventmachine.h:56:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_unix_server (const char *server);
^~~~~~
./eventmachine.h:58:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_fd (int file_descriptor, int watch_mode);
^~~~~~
./eventmachine.h:73:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_tcp_server (const char *address, int port);
^~~~~~
./eventmachine.h:74:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_unix_domain_server (const char *filename);
^~~~~~
./eventmachine.h:75:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_sd (int sd);
^~~~~~
./eventmachine.h:76:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_datagram_socket (const char *server, int port);
^~~~~~
./eventmachine.h:77:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_keyboard();
^~~~~~
./eventmachine.h:119:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_popen (char * const*cmd_strings);
^~~~~~
./eventmachine.h:121:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_filename (const char *fname);
^~~~~~
./eventmachine.h:124:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_pid (int);
^~~~~~
cmain.cpp:103:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_install_oneshot_timer (int seconds)
^~~~~~
cmain.cpp:114:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_connect_to_server (const char *bind_addr, int bind_port, const char *server, int port)
^~~~~~
cmain.cpp:124:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_connect_to_unix_server (const char *server)
^~~~~~
cmain.cpp:134:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_attach_fd (int file_descriptor, int watch_mode)
^~~~~~
cmain.cpp:277:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_create_tcp_server (const char *address, int port)
^~~~~~
cmain.cpp:287:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_create_unix_domain_server (const char *filename)
^~~~~~
cmain.cpp:297:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_attach_sd (int sd)
^~~~~~
cmain.cpp:307:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_open_datagram_socket (const char *address, int port)
^~~~~~
cmain.cpp:317:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_open_keyboard()
^~~~~~
cmain.cpp:327:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_watch_filename (const char *fname)
^~~~~~
cmain.cpp:347:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_watch_pid (int pid)
^~~~~~
cmain.cpp:782:12: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
extern "C" const uintptr_t evma_popen (char * const*cmd_strings)
^~~~~~
cmain.cpp:890:6: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
r = read (Fd, data, filesize);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~
40 warnings generated.
compiling ed.cpp
In file included from ed.cpp:20:
In file included from ./project.h:169:
./binder.h:35:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t GetBinding() {return Binding;}
^~~~~~
In file included from ed.cpp:20:
In file included from ./project.h:170:
In file included from ./em.h:24:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040:
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:19: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:36: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
In file included from ed.cpp:20:
In file included from ./project.h:170:
./em.h:145:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t InstallOneshotTimer (int);
^~~~~~
./em.h:146:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToServer (const char *, int, const char *, int);
^~~~~~
./em.h:147:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToUnixServer (const char *);
^~~~~~
./em.h:149:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateTcpServer (const char *, int);
^~~~~~
./em.h:150:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenDatagramSocket (const char *, int);
^~~~~~
./em.h:151:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateUnixDomainServer (const char*);
^~~~~~
./em.h:152:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachSD (SOCKET);
^~~~~~
./em.h:153:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenKeyboard();
^~~~~~
./em.h:155:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t Socketpair (char* const*);
^~~~~~
./em.h:161:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachFD (SOCKET, bool);
^~~~~~
./em.h:178:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchFile (const char*);
^~~~~~
./em.h:187:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchPid (int);
^~~~~~
In file included from ed.cpp:20:
In file included from ./project.h:174:
./eventmachine.h:54:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_install_oneshot_timer (int seconds);
^~~~~~
./eventmachine.h:55:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_server (const char *bind_addr, int bind_port, const char *server, int port);
^~~~~~
./eventmachine.h:56:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_unix_server (const char *server);
^~~~~~
./eventmachine.h:58:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_fd (int file_descriptor, int watch_mode);
^~~~~~
./eventmachine.h:73:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_tcp_server (const char *address, int port);
^~~~~~
./eventmachine.h:74:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_unix_domain_server (const char *filename);
^~~~~~
./eventmachine.h:75:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_sd (int sd);
^~~~~~
./eventmachine.h:76:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_datagram_socket (const char *server, int port);
^~~~~~
./eventmachine.h:77:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_keyboard();
^~~~~~
./eventmachine.h:119:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_popen (char * const*cmd_strings);
^~~~~~
./eventmachine.h:121:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_filename (const char *fname);
^~~~~~
./eventmachine.h:124:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_pid (int);
^~~~~~
ed.cpp:642:28: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
int remaining = length - writed;
~~~~~~~~~ ~~~~~~~^~~~~~~~
ed.cpp:700:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
OutboundPages.push_back (OutboundPage (buffer, length));
~~~~~~~~~~~~ ^~~~~~
ed.cpp:705:9: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
return length;
~~~~~~ ^~~~~~
ed.cpp:850:11: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
int r = read (sd, readbuffer, sizeof(readbuffer) - 1);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ed.cpp:915:34: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
SslBox->PutCiphertext (buffer, size);
~~~~~~~~~~~~~ ^~~~
ed.cpp:1079:29: warning: implicit conversion loses integer precision: 'std::__1::deque<ConnectionDescriptor::OutboundPage, std::__1::allocator<ConnectionDescriptor::OutboundPage> >::size_type' (aka 'unsigned long') to 'int'
[-Wshorten-64-to-32]
int iovcnt = OutboundPages.size();
~~~~~~ ~~~~~~~~~~~~~~^~~~~~
ed.cpp:1126:22: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
int bytes_written = writev (GetSocket(), iov, iovcnt);
~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ed.cpp:1763:11: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
int r = recvfrom (sd, readbuffer, sizeof(readbuffer) - 1, 0, (struct sockaddr*)&sin, &slen);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ed.cpp:1833:11: warning: implicit conversion loses integer precision: 'ssize_t' (aka 'long') to 'int' [-Wshorten-64-to-32]
int s = sendto (sd, (char*)op->Buffer, op->Length, 0, (struct sockaddr*)&(op->From),
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ed.cpp:1911:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
OutboundPages.push_back (OutboundPage (buffer, length, ReturnAddress));
~~~~~~~~~~~~ ^~~~~~
ed.cpp:1925:9: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
return length;
~~~~~~ ^~~~~~
ed.cpp:1958:49: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
OutboundPages.push_back (OutboundPage (buffer, length, addr_here));
~~~~~~~~~~~~ ^~~~~~
ed.cpp:1972:9: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
return length;
~~~~~~ ^~~~~~
40 warnings generated.
compiling em.cpp
In file included from em.cpp:23:
In file included from ./project.h:169:
./binder.h:35:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t GetBinding() {return Binding;}
^~~~~~
In file included from em.cpp:23:
In file included from ./project.h:170:
In file included from ./em.h:24:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby.h:33:
In file included from /Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040:
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:19: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
/Users/jeremywoertink/.rbenv/versions/2.5.3/include/ruby-2.5.0/ruby/intern.h:47:36: warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]
void rb_mem_clear(register VALUE*, register long);
^~~~~~~~~
In file included from em.cpp:23:
In file included from ./project.h:170:
./em.h:145:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t InstallOneshotTimer (int);
^~~~~~
./em.h:146:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToServer (const char *, int, const char *, int);
^~~~~~
./em.h:147:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t ConnectToUnixServer (const char *);
^~~~~~
./em.h:149:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateTcpServer (const char *, int);
^~~~~~
./em.h:150:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenDatagramSocket (const char *, int);
^~~~~~
./em.h:151:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t CreateUnixDomainServer (const char*);
^~~~~~
./em.h:152:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachSD (SOCKET);
^~~~~~
./em.h:153:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t OpenKeyboard();
^~~~~~
./em.h:155:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t Socketpair (char* const*);
^~~~~~
./em.h:161:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t AttachFD (SOCKET, bool);
^~~~~~
./em.h:178:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchFile (const char*);
^~~~~~
./em.h:187:3: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t WatchPid (int);
^~~~~~
In file included from em.cpp:23:
In file included from ./project.h:174:
./eventmachine.h:54:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_install_oneshot_timer (int seconds);
^~~~~~
./eventmachine.h:55:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_server (const char *bind_addr, int bind_port, const char *server, int port);
^~~~~~
./eventmachine.h:56:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_connect_to_unix_server (const char *server);
^~~~~~
./eventmachine.h:58:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_fd (int file_descriptor, int watch_mode);
^~~~~~
./eventmachine.h:73:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_tcp_server (const char *address, int port);
^~~~~~
./eventmachine.h:74:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_create_unix_domain_server (const char *filename);
^~~~~~
./eventmachine.h:75:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_attach_sd (int sd);
^~~~~~
./eventmachine.h:76:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_datagram_socket (const char *server, int port);
^~~~~~
./eventmachine.h:77:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_open_keyboard();
^~~~~~
./eventmachine.h:119:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_popen (char * const*cmd_strings);
^~~~~~
./eventmachine.h:121:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_filename (const char *fname);
^~~~~~
./eventmachine.h:124:2: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t evma_watch_pid (int);
^~~~~~
em.cpp:303:14: warning: implicit conversion loses integer precision: 'rlim_t' (aka 'unsigned long long') to 'int' [-Wshorten-64-to-32]
return rlim.rlim_cur;
~~~~~~ ~~~~~^~~~~~~~
em.cpp:838:29: warning: implicit conversion loses integer precision: 'std::__1::vector<EventableDescriptor *, std::__1::allocator<EventableDescriptor *> >::size_type' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
int nSockets = Descriptors.size();
~~~~~~~~ ~~~~~~~~~~~~^~~~~~
em.cpp:1145:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::InstallOneshotTimer (int milliseconds)
^~~~~~
em.cpp:1167:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::ConnectToServer (const char *bind_addr, int bind_port, const char *server, int port)
^~~~~~
em.cpp:1233:59: error: invalid operands to binary expression ('__bind<int &, sockaddr *, unsigned long &>' and 'int')
if (bind (sd, (struct sockaddr *)&bind_to, bind_to_len) < 0) {
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/system_error:492:1: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long &>' to 'const std::__1::error_condition' for 1st argument
operator<(const error_condition& __x, const error_condition& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/system_error:569:1: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long &>' to 'const std::__1::error_code' for 1st argument
operator<(const error_code& __x, const error_code& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/utility:572:1: note: candidate template ignored: could not match 'pair' against '__bind'
operator< (const pair<_T1,_T2>& __x, const pair<_T1,_T2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:702:1: note: candidate template ignored: could not match 'reverse_iterator' against '__bind'
operator<(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:1143:1: note: candidate template ignored: could not match 'move_iterator' against '__bind'
operator<(const move_iterator<_Iter1>& __x, const move_iterator<_Iter2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:1512:1: note: candidate template ignored: could not match '__wrap_iter' against '__bind'
operator<(const __wrap_iter<_Iter1>& __x, const __wrap_iter<_Iter2>& __y) _NOEXCEPT_DEBUG
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/tuple:1187:1: note: candidate template ignored: could not match 'tuple' against '__bind'
operator<(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:2920:1: note: candidate template ignored: could not match 'unique_ptr' against '__bind'
operator< (const unique_ptr<_T1, _D1>& __x, const unique_ptr<_T2, _D2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:2978:1: note: candidate template ignored: could not match 'unique_ptr' against '__bind'
operator<(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:2987:1: note: candidate template ignored: could not match 'unique_ptr<type-parameter-0-0, type-parameter-0-1>' against 'int'
operator<(nullptr_t, const unique_ptr<_T1, _D1>& __x)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:4758:1: note: candidate template ignored: could not match 'shared_ptr' against '__bind'
operator<(const shared_ptr<_Tp>& __x, const shared_ptr<_Up>& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:4823:1: note: candidate template ignored: could not match 'shared_ptr' against '__bind'
operator<(const shared_ptr<_Tp>& __x, nullptr_t) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:4831:1: note: candidate template ignored: could not match 'shared_ptr<type-parameter-0-0>' against 'int'
operator<(nullptr_t, const shared_ptr<_Tp>& __x) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string_view:671:6: note: candidate template ignored: could not match 'basic_string_view' against '__bind'
bool operator<(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string_view:678:6: note: candidate template ignored: could not match 'basic_string_view' against '__bind'
bool operator<(basic_string_view<_CharT, _Traits> __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string_view:686:6: note: candidate template ignored: could not match 'basic_string_view<type-parameter-0-0, type-parameter-0-1>' against 'int'
bool operator<(typename common_type<basic_string_view<_CharT, _Traits> >::type __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:3650:1: note: candidate template ignored: could not match 'basic_string' against '__bind'
operator< (const basic_string<_CharT, _Traits, _Allocator>& __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:3659:1: note: candidate template ignored: could not match 'basic_string' against '__bind'
operator< (const basic_string<_CharT, _Traits, _Allocator>& __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:3668:1: note: candidate template ignored: could not match 'const _CharT *' against '__bind<int &, sockaddr *, unsigned long &>'
operator< (const _CharT* __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/map:1407:1: note: candidate template ignored: could not match 'map' against '__bind'
operator< (const map<_Key, _Tp, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/map:1872:1: note: candidate template ignored: could not match 'multimap' against '__bind'
operator< (const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/set:754:1: note: candidate template ignored: could not match 'set' against '__bind'
operator< (const set<_Key, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/set:1164:1: note: candidate template ignored: could not match 'multiset' against '__bind'
operator< (const multiset<_Key, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/vector:3326:1: note: candidate template ignored: could not match 'vector' against '__bind'
operator< (const vector<_Tp, _Allocator>& __x, const vector<_Tp, _Allocator>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/deque:2868:1: note: candidate template ignored: could not match 'deque' against '__bind'
operator< (const deque<_Tp, _Allocator>& __x, const deque<_Tp, _Allocator>& __y)
^
em.cpp:1243:48: warning: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'socklen_t' (aka 'unsigned int') [-Wshorten-64-to-32]
if (connect (sd, (struct sockaddr *)&bind_as, bind_as_len) == 0) {
~~~~~~~ ^~~~~~~~~~~
em.cpp:1358:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::ConnectToUnixServer (const char *server)
^~~~~~
em.cpp:1428:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::AttachFD (SOCKET fd, bool watch_mode)
^~~~~~
em.cpp:1577:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::CreateTcpServer (const char *server, int port)
^~~~~~
em.cpp:1614:6: error: value of type '__bind<int &, sockaddr *, unsigned long &>' is not contextually convertible to 'bool'
if (bind (sd_accept, (struct sockaddr *)&bind_here, bind_here_len)) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
em.cpp:1637:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::OpenDatagramSocket (const char *address, int port)
^~~~~~
em.cpp:1661:62: error: invalid operands to binary expression ('__bind<int &, sockaddr *, unsigned long &>' and 'int')
if (bind (sd, (struct sockaddr *)&bind_here, bind_here_len) != 0)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/system_error:606:1: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long &>' to 'const std::__1::error_code' for 1st argument
operator!=(const error_code& __x, const error_code& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/system_error:611:1: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long &>' to 'const std::__1::error_code' for 1st argument
operator!=(const error_code& __x, const error_condition& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/system_error:616:1: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long &>' to 'const std::__1::error_condition' for 1st argument
operator!=(const error_condition& __x, const error_code& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/system_error:621:1: note: candidate function not viable: no known conversion from '__bind<int &, sockaddr *, unsigned long &>' to 'const std::__1::error_condition' for 1st argument
operator!=(const error_condition& __x, const error_condition& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/utility:564:1: note: candidate template ignored: could not match 'pair' against '__bind'
operator!=(const pair<_T1,_T2>& __x, const pair<_T1,_T2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:710:1: note: candidate template ignored: could not match 'reverse_iterator' against '__bind'
operator!=(const reverse_iterator<_Iter1>& __x, const reverse_iterator<_Iter2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:932:1: note: candidate template ignored: could not match 'istream_iterator' against '__bind'
operator!=(const istream_iterator<_Tp, _CharT, _Traits, _Distance>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:1033:6: note: candidate template ignored: could not match 'istreambuf_iterator' against '__bind'
bool operator!=(const istreambuf_iterator<_CharT,_Traits>& __a,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:1151:1: note: candidate template ignored: could not match 'move_iterator' against '__bind'
operator!=(const move_iterator<_Iter1>& __x, const move_iterator<_Iter2>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:1440:5: note: candidate template ignored: could not match '__wrap_iter' against '__bind'
operator!=(const __wrap_iter<_Iter1>&, const __wrap_iter<_Iter2>&) _NOEXCEPT_DEBUG;
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/iterator:1556:1: note: candidate template ignored: could not match '__wrap_iter' against '__bind'
operator!=(const __wrap_iter<_Iter1>& __x, const __wrap_iter<_Iter1>& __y) _NOEXCEPT_DEBUG
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/tuple:1152:1: note: candidate template ignored: could not match 'tuple' against '__bind'
operator!=(const tuple<_Tp...>& __x, const tuple<_Up...>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:1965:6: note: candidate template ignored: could not match 'allocator' against '__bind'
bool operator!=(const allocator<_Tp>&, const allocator<_Up>&) _NOEXCEPT {return false;}
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:2915:1: note: candidate template ignored: could not match 'unique_ptr' against '__bind'
operator!=(const unique_ptr<_T1, _D1>& __x, const unique_ptr<_T2, _D2>& __y) {return !(__x == __y);}
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:2962:1: note: candidate template ignored: could not match 'unique_ptr' against '__bind'
operator!=(const unique_ptr<_T1, _D1>& __x, nullptr_t) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:2970:1: note: candidate template ignored: could not match 'unique_ptr<type-parameter-0-0, type-parameter-0-1>' against 'int'
operator!=(nullptr_t, const unique_ptr<_T1, _D1>& __x) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:4750:1: note: candidate template ignored: could not match 'shared_ptr' against '__bind'
operator!=(const shared_ptr<_Tp>& __x, const shared_ptr<_Up>& __y) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:4807:1: note: candidate template ignored: could not match 'shared_ptr' against '__bind'
operator!=(const shared_ptr<_Tp>& __x, nullptr_t) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/memory:4815:1: note: candidate template ignored: could not match 'shared_ptr<type-parameter-0-0>' against 'int'
operator!=(nullptr_t, const shared_ptr<_Tp>& __x) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string_view:640:6: note: candidate template ignored: could not match 'basic_string_view' against '__bind'
bool operator!=(basic_string_view<_CharT, _Traits> __lhs, basic_string_view<_CharT, _Traits> __rhs) _NOEXCEPT
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string_view:649:6: note: candidate template ignored: could not match 'basic_string_view' against '__bind'
bool operator!=(basic_string_view<_CharT, _Traits> __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string_view:659:6: note: candidate template ignored: could not match 'basic_string_view<type-parameter-0-0, type-parameter-0-1>' against 'int'
bool operator!=(typename common_type<basic_string_view<_CharT, _Traits> >::type __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:540:6: note: candidate template ignored: could not match 'fpos' against '__bind'
bool operator!=(const fpos<_StateT>& __x, const fpos<_StateT>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:3621:1: note: candidate template ignored: could not match 'basic_string' against '__bind'
operator!=(const basic_string<_CharT,_Traits,_Allocator>& __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:3630:1: note: candidate template ignored: could not match 'const _CharT *' against '__bind<int &, sockaddr *, unsigned long &>'
operator!=(const _CharT* __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/string:3639:1: note: candidate template ignored: could not match 'basic_string' against '__bind'
operator!=(const basic_string<_CharT, _Traits, _Allocator>& __lhs,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/functional:1965:1: note: candidate template ignored: could not match 'function' against '__bind'
operator!=(const function<_Rp(_ArgTypes...)>& __f, nullptr_t) _NOEXCEPT {return (bool)__f;}
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/functional:1970:1: note: candidate template ignored: could not match 'function<type-parameter-0-0 (type-parameter-0-1...)>' against 'int'
operator!=(nullptr_t, const function<_Rp(_ArgTypes...)>& __f) _NOEXCEPT {return (bool)__f;}
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/map:1416:1: note: candidate template ignored: could not match 'map' against '__bind'
operator!=(const map<_Key, _Tp, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/map:1881:1: note: candidate template ignored: could not match 'multimap' against '__bind'
operator!=(const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/set:763:1: note: candidate template ignored: could not match 'set' against '__bind'
operator!=(const set<_Key, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/set:1173:1: note: candidate template ignored: could not match 'multiset' against '__bind'
operator!=(const multiset<_Key, _Compare, _Allocator>& __x,
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/vector:3318:1: note: candidate template ignored: could not match 'vector' against '__bind'
operator!=(const vector<_Tp, _Allocator>& __x, const vector<_Tp, _Allocator>& __y)
^
/usr/local/Cellar/llvm/6.0.1/include/c++/v1/deque:2860:1: note: candidate template ignored: could not match 'deque' against '__bind'
operator!=(const deque<_Tp, _Allocator>& __x, const deque<_Tp, _Allocator>& __y)
^
em.cpp:1912:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::CreateUnixDomainServer (const char *filename)
^~~~~~
em.cpp:1947:6: error: value of type '__bind<int &, sockaddr *, unsigned long>' is not contextually convertible to 'bool'
if (bind (sd_accept, (struct sockaddr*)&s_sun, sizeof(s_sun))) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
em.cpp:1976:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::AttachSD (SOCKET sd_accept)
^~~~~~
em.cpp:2012:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::Socketpair (char * const * cmd_strings)
^~~~~~
em.cpp:2075:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::OpenKeyboard()
^~~~~~
em.cpp:2096:52: warning: implicit conversion loses integer precision: 'unsigned long' to 'int' [-Wshorten-64-to-32]
return Descriptors.size() + NewDescriptors.size() - i;
~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
em.cpp:2105:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::WatchPid (int pid)
^~~~~~
em.cpp:2176:1: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers]
const uintptr_t EventMachine_t::WatchFile (const char *fpath)
^~~~~~
43 warnings and 4 errors generated.
make: *** [em.o] Error 1
make failed, exit code 2
Gem files will remain installed in /Users/jeremywoertink/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/gems/eventmachine-1.2.2 for inspection.
Results logged to /Users/jeremywoertink/.rbenv/versions/2.5.3/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-18/2.5.0-static/eventmachine-1.2.2/gem_make.out
An error occurred while installing eventmachine (1.2.2), and Bundler cannot continue.
Make sure that `gem install eventmachine -v '1.2.2' --source 'https://rubygems.org/'` succeeds before bundling.
In Gemfile:
middleman-livereload was resolved to 3.4.6, which depends on
em-websocket was resolved to 0.5.1, which depends on
eventmachine
Since upgrading to ruby 2.5.3, I'm no longer able to bundle the project. This is running on macOS 10.14.3