bombela/backward-cpp

Libunwind on ARM Mac can't compile

adamnovak opened this issue · 0 comments

With BACKWARD_HAS_LIBUNWIND=1 on an Arm MAC, backward.hpp has compiler errors. The first seems to be a missing semicolon at:

unw_getcontext(&ctx)

My error log is:

/Users/anovak/workspace/vg/include/backward.hpp:1013:27: error: expected ';' after expression
      unw_getcontext(&ctx)
                          ^
/Users/anovak/workspace/vg/include/backward.hpp:1016:19: error: no member named 'uc_mcontext' in 'unw_context_t'
          if (ctx.uc_mcontext->__ss.__eip ==
              ~~~ ^
/Users/anovak/workspace/vg/include/backward.hpp:1017:32: error: unknown type name 'greg_t'
              reinterpret_cast<greg_t>(error_addr())) {
                               ^
/Users/anovak/workspace/vg/include/backward.hpp:1018:13: error: no member named 'uc_mcontext' in 'unw_context_t'
        ctx.uc_mcontext->__ss.__eip = ctx.uc_mcontext->__ss.__esp;
        ~~~ ^
/Users/anovak/workspace/vg/include/backward.hpp:1018:43: error: no member named 'uc_mcontext' in 'unw_context_t'
        ctx.uc_mcontext->__ss.__eip = ctx.uc_mcontext->__ss.__esp;
                                      ~~~ ^
/Users/anovak/workspace/vg/include/backward.hpp:1021:40: error: no member named 'uc_mcontext' in 'unw_context_t'
          reinterpret_cast<void *>(ctx.uc_mcontext->__ss.__eip);
                                   ~~~ ^
6 errors generated.