payonel / ocvm

OpenComputer Emulator
41 stars 7 forks source link

Catastrophic build errors #23

Open LoganDark opened 6 years ago

LoganDark commented 6 years ago

There are so many errors here I don't really care to look through them and separate them out.

Output
0 LoganDark ~/ocvm env PKG_CONFIG_PATH=/usr/local/Cellar/lua/5.2.4_4/lib/pkgconfig/ make
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c main.cpp -o bin/main.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c apis/os.cpp -o bin/apis/os.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c apis/system.cpp -o bin/apis/system.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c apis/unicode.cpp -o bin/apis/unicode.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c apis/userdata.cpp -o bin/apis/userdata.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/component.cpp -o bin/components/component.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/computer.cpp -o bin/components/computer.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/eeprom.cpp -o bin/components/eeprom.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/filesystem.cpp -o bin/components/filesystem.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/gpu.cpp -o bin/components/gpu.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/internet.cpp -o bin/components/internet.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/keyboard.cpp -o bin/components/keyboard.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/modem.cpp -o bin/components/modem.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/sandbox.cpp -o bin/components/sandbox.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/screen.cpp -o bin/components/screen.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c io/frame.cpp -o bin/io/frame.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/ansi.cpp -o bin/drivers/ansi.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/ansi_escape.cpp -o bin/drivers/ansi_escape.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/basic_term.cpp -o bin/drivers/basic_term.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/connection.cpp -o bin/drivers/connection.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/factory_shell.cpp -o bin/drivers/factory_shell.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/fs_utils.cpp -o bin/drivers/fs_utils.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/internet_drv.cpp -o bin/drivers/internet_drv.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/kb_data.cpp -o bin/drivers/kb_data.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/kb_drv.cpp -o bin/drivers/kb_drv.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/modem_drv.cpp -o bin/drivers/modem_drv.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/mouse_drv.cpp -o bin/drivers/mouse_drv.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/raw_tty.cpp -o bin/drivers/raw_tty.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/term_buffer.cpp -o bin/drivers/term_buffer.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/worker.cpp -o bin/drivers/worker.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c color/color_map.cpp -o bin/color/color_map.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/client.cpp -o bin/model/client.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/config.cpp -o bin/model/config.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/host.cpp -o bin/model/host.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/log.cpp -o bin/model/log.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/luaproxy.cpp -o bin/model/luaproxy.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/prof_log.cpp -o bin/model/prof_log.o
c++ -g --std=c++14 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/value.cpp -o bin/model/value.o
In file included from drivers/ansi.cpp:2:
./color/color_types.h:5:1: warning: 'Color' defined as a struct here but previously declared as a class
      [-Wmismatched-tags]
struct Color
^
drivers/ansi.h:7:1: note: did you mean struct here?
class Color;
^~~~~
struct
drivers/worker.cpp:76:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
    return std::move(unique_lock<mutex> (_m));
           ^
drivers/worker.cpp:76:12: note: remove std::move call here
    return std::move(unique_lock<mutex> (_m));
           ^~~~~~~~~~                       ~
1 warning generated.
In file included from drivers/ansi_escape.cpp:12:
drivers/ansi.h:7:1: warning: class 'Color' was previously declared as a struct [-Wmismatched-tags]
class Color;
^
./color/color_types.h:5:8: note: previous use is here
struct Color
       ^
drivers/ansi.h:7:1: note: did you mean struct here?
class Color;
^~~~~
struct
components/filesystem.cpp:41:13: warning: 'this' pointer cannot be null in well-defined C++ code; comparison may be
      assumed to always evaluate to false [-Wtautological-undefined-compare]
        if (this == nullptr || _fs == nullptr)
            ^~~~    ~~~~~~~
model/prof_log.cpp:12:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
    return std::move(ofstream(filename, append ? fstream::app : fstream::out));
           ^
model/prof_log.cpp:12:12: note: remove std::move call here
    return std::move(ofstream(filename, append ? fstream::app : fstream::out));
           ^~~~~~~~~~                                                        ~
1 warning generated.
drivers/fs_utils.cpp:109:21: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
        *pOutData = std::move(static_cast<stringstream const&>(stringstream() << file.rdbuf()).str());
                    ^
drivers/fs_utils.cpp:109:21: note: remove std::move call here
        *pOutData = std::move(static_cast<stringstream const&>(stringstream() << file.rdbuf()).str());
                    ^~~~~~~~~~                                                                      ~
In file included from drivers/raw_tty.cpp:22:
In file included from ./drivers/ansi_escape.h:3:
In file included from ./io/frame.h:14:
./color/color_types.h:5:1: warning: 'Color' defined as a struct here but previously declared as a class
      [-Wmismatched-tags]
struct Color
^
drivers/ansi.h:7:1: note: did you mean struct here?
class Color;
^~~~~
struct
drivers/raw_tty.cpp:48:15: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
    _kb_drv = std::move(KeyboardTerminalDriver::create(hasMasterTty()));
              ^
drivers/raw_tty.cpp:48:15: note: remove std::move call here
    _kb_drv = std::move(KeyboardTerminalDriver::create(hasMasterTty()));
              ^~~~~~~~~~                                              ~
components/gpu.cpp:544:33: warning: braces around scalar initializer [-Wbraced-scalar-init]
                    it->value = {" "};
                                ^~~~~
drivers/ansi_escape.cpp:58:9: error: use of undeclared identifier 'sigtimedwait'
    if (sigtimedwait(&g_sigset, nullptr, &timeout) == SIGWINCH) // winched
        ^
In file included from drivers/raw_tty.cpp:1:
In file included from drivers/raw_tty.h:3:
In file included from drivers/mouse_drv.h:3:
In file included from ./io/event.h:3:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:266:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__bit_reference:15:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:643:
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2285:5: warning:
      delete called on 'KeyboardTerminalDriver' that is abstract but has non-virtual destructor
      [-Wdelete-non-virtual-dtor]
    delete __ptr;
    ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2598:7: note:
      in instantiation of member function 'std::__1::default_delete<KeyboardTerminalDriver>::operator()' requested here
      __ptr_.second()(__tmp);
      ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2552:19: note:
      in instantiation of member function 'std::__1::unique_ptr<KeyboardTerminalDriver,
      std::__1::default_delete<KeyboardTerminalDriver> >::reset' requested here
  ~unique_ptr() { reset(); }
                  ^
drivers/raw_tty.cpp:48:25: note: in instantiation of member function 'std::__1::unique_ptr<KeyboardTerminalDriver,
      std::__1::default_delete<KeyboardTerminalDriver> >::~unique_ptr' requested here
    _kb_drv = std::move(KeyboardTerminalDriver::create(hasMasterTty()));
                        ^
1 warning and 1 error generated.
make: *** [bin/drivers/ansi_escape.o] Error 1
make: *** Waiting for unfinished jobs....
drivers/raw_tty.cpp:29:22: warning: unused variable '_original_kb_mode' [-Wunused-variable]
static unsigned long _original_kb_mode = 0;
                     ^
In file included from components/modem.cpp:1:
In file included from components/modem.h:3:
In file included from components/component.h:5:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
components/modem.cpp:182:23: note: in instantiation of function template specialization 'ValuePack::ret<unsigned long>'
      requested here
    return ValuePack::ret(lua, _maxPacketSize);
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
In file included from apis/unicode.cpp:1:
In file included from apis/unicode.h:2:
In file included from ./model/luaproxy.h:7:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
apis/unicode.cpp:375:23: note: in instantiation of function template specialization 'ValuePack::ret<unsigned long>'
      requested here
    return ValuePack::ret(lua, wlen(Value::checkArg<vector<char>>(lua, 1)));
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
1 error generated.
1 warning generated.
make: *** [bin/apis/unicode.o] Error 1
In file included from drivers/kb_drv.cpp:1:
In file included from drivers/kb_drv.h:3:
In file included from ./io/event.h:3:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:266:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__bit_reference:15:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:643:
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2285:5: warning:
      delete called on non-final 'KeyboardLocalRawTtyDriver' that has virtual functions but non-virtual destructor
      [-Wdelete-non-virtual-dtor]
    delete __ptr;
    ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2598:7: note:
      in instantiation of member function 'std::__1::default_delete<KeyboardLocalRawTtyDriver>::operator()' requested
      here
      __ptr_.second()(__tmp);
      ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2552:19: note:
      in instantiation of member function 'std::__1::unique_ptr<KeyboardLocalRawTtyDriver,
      std::__1::default_delete<KeyboardLocalRawTtyDriver> >::reset' requested here
  ~unique_ptr() { reset(); }
                  ^
drivers/kb_drv.cpp:241:16: note: in instantiation of member function 'std::__1::unique_ptr<KeyboardLocalRawTtyDriver,
      std::__1::default_delete<KeyboardLocalRawTtyDriver> >::~unique_ptr' requested here
        return std::make_unique<KeyboardLocalRawTtyDriver>();
               ^
In file included from drivers/kb_drv.cpp:1:
In file included from drivers/kb_drv.h:3:
In file included from ./io/event.h:3:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:266:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__bit_reference:15:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:643:
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2285:5: warning:
      delete called on 'KeyboardTerminalDriver' that is abstract but has non-virtual destructor
      [-Wdelete-non-virtual-dtor]
    delete __ptr;
    ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2598:7: note:
      in instantiation of member function 'std::__1::default_delete<KeyboardTerminalDriver>::operator()' requested here
      __ptr_.second()(__tmp);
      ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2552:19: note:
      in instantiation of member function 'std::__1::unique_ptr<KeyboardTerminalDriver,
      std::__1::default_delete<KeyboardTerminalDriver> >::reset' requested here
  ~unique_ptr() { reset(); }
                  ^
drivers/kb_drv.cpp:241:16: note: in instantiation of member function 'std::__1::unique_ptr<KeyboardTerminalDriver,
      std::__1::default_delete<KeyboardTerminalDriver> >::~unique_ptr' requested here
        return std::make_unique<KeyboardLocalRawTtyDriver>();
               ^
In file included from drivers/kb_drv.cpp:1:
In file included from drivers/kb_drv.h:3:
In file included from ./io/event.h:3:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/vector:266:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__bit_reference:15:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/algorithm:643:
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2285:5: warning:
      delete called on non-final 'KeyboardPtyDriver' that has virtual functions but non-virtual destructor
      [-Wdelete-non-virtual-dtor]
    delete __ptr;
    ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2598:7: note:
      in instantiation of member function 'std::__1::default_delete<KeyboardPtyDriver>::operator()' requested here
      __ptr_.second()(__tmp);
      ^
/Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/memory:2552:19: note:
      in instantiation of member function 'std::__1::unique_ptr<KeyboardPtyDriver,
      std::__1::default_delete<KeyboardPtyDriver> >::reset' requested here
  ~unique_ptr() { reset(); }
                  ^
drivers/kb_drv.cpp:243:16: note: in instantiation of member function 'std::__1::unique_ptr<KeyboardPtyDriver,
      std::__1::default_delete<KeyboardPtyDriver> >::~unique_ptr' requested here
        return std::make_unique<KeyboardPtyDriver>();
               ^
In file included from components/filesystem.cpp:1:
In file included from components/filesystem.h:2:
In file included from components/component.h:5:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
components/filesystem.cpp:564:23: note: in instantiation of function template specialization
      'ValuePack::ret<unsigned long>' requested here
    return ValuePack::ret(lua, fs_utils::size(path() + clean(filepath, true, false)));
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
In file included from components/computer.cpp:1:
components/computer.h:68:12: warning: private field '_nexttrace' is not used [-Wunused-private-field]
    double _nexttrace = 0;
           ^
In file included from drivers/internet_drv.cpp:1:
In file included from drivers/internet_drv.h:3:
In file included from ./apis/userdata.h:3:
In file included from ./model/luaproxy.h:7:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
drivers/internet_drv.cpp:249:23: note: in instantiation of function template specialization
      'ValuePack::ret<unsigned long>' requested here
    return ValuePack::ret(lua, buffer.size());
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
1 warning and 1 error generated.
make: *** [bin/components/filesystem.o] Error 1
4 warnings generated.
1 error generated.
make: *** [bin/components/modem.o] Error 1
1 error generated.
make: *** [bin/drivers/internet_drv.o] Error 1
In file included from model/client.cpp:1:
model/client.h:55:21: warning: private field '_globals' is not used [-Wunused-private-field]
    SandboxMethods* _globals;
                    ^
3 warnings generated.
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
payonel commented 6 years ago

I dont have complete support for mac, and I don't plan to add it myself. I have cleaned up a lot of the warnings your compiler is giving (mine doesn't give any)

I have added an if apple around some of the code that would have to be ported for mac (the winch code, specifically)

But the ValuePack::push_ret variadric template methods should compile just fine. I dont know what is wrong with the xcode toolchain and why it doesn't understand it.

LoganDark commented 6 years ago

If you have a macOS version, can I have it then? :P

Because it seems like my compiler just doesn't like the code...

payonel commented 6 years ago

I don't have another version of the code. I use g++ 8.1.0 and 8.20 on linux (gentoo and ubuntu).

LoganDark commented 6 years ago

Okay, well then your claim that you "cleaned up a lot of the warnings [the] compiler is giving" is completely invalid. You're not using macOS, so you can't vouch for it using another OS.

While macOS is very POSIX-like, it isn't by any means equivalent to Linux. The tools are not the same. Especially since Apple is very, very bad at providing good developer tools.

LoganDark commented 6 years ago

I did test again with some more recent commits, still no luck.

Output
0 LoganDark ~/ocvm git pull origin master
remote: Counting objects: 138, done.
remote: Compressing objects: 100% (26/26), done.
remote: Total 138 (delta 112), reused 138 (delta 112), pack-reused 0
Receiving objects: 100% (138/138), 19.52 KiB | 0 bytes/s, done.
Resolving deltas: 100% (112/112), completed with 45 local objects.
From https://github.com/payonel/ocvm
 * branch            master     -> FETCH_HEAD
   e49e1c5..41bf80a  master     -> origin/master
Updating e49e1c5..41bf80a
Fast-forward
 .gitignore                    |   2 +-
 .vscode/c_cpp_properties.json |  79 ---------------------
 .vscode/launch.json           |   2 +-
 .vscode/settings.json         |  16 ++++-
 Makefile                      |  45 ++++++++----
 apis/userdata.h               |  15 ++++
 components/computer.cpp       |   2 +
 components/computer.h         |   3 +-
 components/eeprom.cpp         |   2 +
 components/eeprom.h           |   2 +
 components/filesystem.cpp     |   9 ++-
 components/filesystem.h       |   2 +
 components/gpu.cpp            |   5 +-
 components/gpu.h              |   2 +
 components/internet.cpp       |  13 ++--
 components/internet.h         |   2 +
 components/keyboard.cpp       |   3 +
 components/keyboard.h         |   2 +
 components/modem.cpp          |   9 +++
 components/modem.h            |   3 +
 components/sandbox.cpp        |  14 +++-
 components/sandbox.h          |   3 +-
 components/screen.cpp         |  19 +++++
 components/screen.h           |  10 ++-
 drivers/ansi.h                |   2 +-
 drivers/ansi_escape.cpp       |   2 +
 drivers/fs_utils.cpp          |   2 +-
 drivers/internet_drv.cpp      | 314 +++++++++++-----------------------------------------------------------------------
 drivers/internet_drv.h        |  78 +++++++++------------
 drivers/internet_http.cpp     | 283 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/internet_http.h       |  39 +++++++++++
 drivers/kb_data.cpp           |  11 ++-
 drivers/kb_drv.h              |   1 +
 drivers/raw_tty.cpp           |  19 ++++-
 drivers/worker.cpp            |   2 +-
 io/frame.cpp                  |  10 ++-
 io/frame.h                    |  13 +++-
 model/client.cpp              |  12 +++-
 model/client.h                |   1 -
 model/host.cpp                |  76 ++++++++------------
 model/host.h                  |  14 ++++
 model/prof_log.cpp            |   2 +-
 42 files changed, 643 insertions(+), 502 deletions(-)
 delete mode 100644 .vscode/c_cpp_properties.json
 create mode 100644 drivers/internet_http.cpp
 create mode 100644 drivers/internet_http.h
0 LoganDark ~/ocvm env PKG_CONFIG_PATH=/usr/local/Cellar/lua/5.2.4_4/lib/pkgconfig/ make
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c main.cpp -o bin/main.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c apis/unicode.cpp -o bin/apis/unicode.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c apis/userdata.cpp -o bin/apis/userdata.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/component.cpp -o bin/components/component.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/computer.cpp -o bin/components/computer.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/eeprom.cpp -o bin/components/eeprom.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/filesystem.cpp -o bin/components/filesystem.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/gpu.cpp -o bin/components/gpu.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/internet.cpp -o bin/components/internet.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/keyboard.cpp -o bin/components/keyboard.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/modem.cpp -o bin/components/modem.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/sandbox.cpp -o bin/components/sandbox.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c components/screen.cpp -o bin/components/screen.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c io/frame.cpp -o bin/io/frame.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/ansi.cpp -o bin/drivers/ansi.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/ansi_escape.cpp -o bin/drivers/ansi_escape.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/basic_term.cpp -o bin/drivers/basic_term.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/factory_shell.cpp -o bin/drivers/factory_shell.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/fs_utils.cpp -o bin/drivers/fs_utils.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/internet_drv.cpp -o bin/drivers/internet_drv.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/internet_http.cpp -o bin/drivers/internet_http.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/kb_data.cpp -o bin/drivers/kb_data.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/kb_drv.cpp -o bin/drivers/kb_drv.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/raw_tty.cpp -o bin/drivers/raw_tty.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/term_buffer.cpp -o bin/drivers/term_buffer.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c drivers/worker.cpp -o bin/drivers/worker.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/client.cpp -o bin/model/client.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/host.cpp -o bin/model/host.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/log.cpp -o bin/model/log.o
c++ -g --std=c++17 -Wall -I/usr/local/opt/lua/include -I. -MMD -c model/prof_log.cpp -o bin/model/prof_log.o
drivers/ansi_escape.cpp:59:9: error: use of undeclared identifier 'sigtimedwait'
    if (sigtimedwait(&g_sigset, nullptr, &timeout) == SIGWINCH) // winched
        ^
components/sandbox.cpp:55:39: warning: 'create_object' has C-linkage specified, but returns incomplete type
      'std::unique_ptr<Component>' which could be incompatible with C [-Wreturn-type-c-linkage]
extern "C" std::unique_ptr<Component> create_object()
                                      ^
components/sandbox.cpp:60:24: warning: 'name' has C-linkage specified, but returns user-defined type 'std::string' (aka
      'basic_string<char, char_traits<char>, allocator<char> >') which is incompatible with C [-Wreturn-type-c-linkage]
extern "C" std::string name()
                       ^
components/filesystem.cpp:44:13: warning: implicit conversion of nullptr constant to 'bool' [-Wnull-conversion]
        if (nullptr || _fs == nullptr)
            ^~~~~~~ ~~
            false
1 error generated.
make: *** [bin/drivers/ansi_escape.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from drivers/internet_drv.cpp:1:
In file included from drivers/internet_drv.h:3:
In file included from ./apis/userdata.h:3:
In file included from ./model/luaproxy.h:7:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
drivers/internet_drv.cpp:125:23: note: in instantiation of function template specialization
      'ValuePack::ret<unsigned long>' requested here
    return ValuePack::ret(lua, buffer.size());
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
1 error generated.
make: *** [bin/drivers/internet_drv.o] Error 1
2 warnings generated.
In file included from components/modem.cpp:2:
In file included from components/modem.h:3:
In file included from components/component.h:5:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
components/modem.cpp:186:23: note: in instantiation of function template specialization 'ValuePack::ret<unsigned long>'
      requested here
    return ValuePack::ret(lua, _maxPacketSize);
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
In file included from apis/unicode.cpp:1:
In file included from apis/unicode.h:2:
In file included from ./model/luaproxy.h:7:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
apis/unicode.cpp:375:23: note: in instantiation of function template specialization 'ValuePack::ret<unsigned long>'
      requested here
    return ValuePack::ret(lua, wlen(Value::checkArg<vector<char>>(lua, 1)));
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
1 error generated.
make: *** [bin/apis/unicode.o] Error 1
1 error generated.
make: *** [bin/components/modem.o] Error 1
In file included from components/filesystem.cpp:1:
In file included from components/filesystem.h:2:
In file included from components/component.h:5:
./model/value.h:176:48: error: no matching function for call to 'push_ret'
        return ValuePack::push_ret(lua, arg) + ValuePack::push_ret(lua, args...);
                                               ^~~~~~~~~~~~~~~~~~~
./model/value.h:98:27: note: in instantiation of function template specialization 'ValuePack::push_ret<unsigned long>'
      requested here
        return ValuePack::push_ret(lua, args...);
                          ^
components/filesystem.cpp:567:23: note: in instantiation of function template specialization
      'ValuePack::ret<unsigned long>' requested here
    return ValuePack::ret(lua, fs_utils::size(path() + clean(filepath, true, false)));
                      ^
./model/value.h:174:23: note: candidate function template not viable: requires at least 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const T& arg, const Ts&... args)
                      ^
./model/value.h:101:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, bool arg)
                      ^
./model/value.h:107:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int32_t arg)
                      ^
./model/value.h:113:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint32_t arg)
                      ^
./model/value.h:119:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, int64_t arg)
                      ^
./model/value.h:125:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, uint64_t arg)
                      ^
./model/value.h:131:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, double arg)
                      ^
./model/value.h:137:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, float arg)
                      ^
./model/value.h:143:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const string& arg)
                      ^
./model/value.h:149:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const char* arg)
                      ^
./model/value.h:155:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const void* arg)
                      ^
./model/value.h:161:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const vector<char>& arg)
                      ^
./model/value.h:167:23: note: candidate function not viable: requires 2 arguments, but 1 was provided
    inline static int push_ret(lua_State* lua, const Value& v)
                      ^
1 warning and 1 error generated.
make: *** [bin/components/filesystem.o] Error 1
LoganDark commented 6 years ago

Also, I decided to put all the mile-tall code blocks inside my posts into <details> elements :p

payonel commented 6 years ago

Okay, well then your claim that you "cleaned up a lot of the warnings [the] compiler is giving" is completely invalid. You're not using macOS, so you can't vouch for it using another OS.

Haha, it's not completely invalid :) I read the warnings and cleaned up the code they referred to. If you try to build again with latest, there will be fewer warnings, and 1 fewer error

Anyways, while I hope for macos support, it's not in my plans. Also because I dont have a personal mac for testing/porting.

LoganDark commented 6 years ago

I dont have a personal mac for testing/porting.

I would actually be completely fine with donating my machine to you during the day when I'm usually asleep if I'm able to fix my schedule.

Remote desktop is a thing :P

Ocawesome101 commented 3 years ago

if this hasn't been fixed with a newer macos version (which i think it might've) it might be worth testing with a newer version of clang/gcc available through Homebrew if you haven't done it already, and if you're still interested in this.