luckyframework / website-old

The old website for Lucky (archived)
https://github.com/luckyframework/website-v2
MIT License
11 stars 29 forks source link

Unable to boot site locally #214

Open jwoertink opened 5 years ago

jwoertink commented 5 years ago

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