CScript: sol: runtime error: sol: cannot call '__pairs/pairs' on type 'sol::as_container_t<CLogger>': it is not recognized as a container
stack traceback:
[C]: in ?
[C]: in function 'pairs'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:754: in function 'LuaPanda.getTableMemberNum'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:2768: in function 'LuaPanda.getGlobalVariable'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1238: in function 'LuaPanda.dataProcess'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1559: in function 'LuaPanda.receiveMessage'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1602: in function 'LuaPanda.debugger_wait_msg'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1255: in function 'LuaPanda.dataProcess'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1559: in function 'LuaPanda.receiveMessage'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1602: in function 'LuaPanda.debugger_wait_msg'
...
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1602: in function 'LuaPanda.debugger_wait_msg'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1151: in function 'LuaPanda.dataProcess'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1559: in function 'LuaPanda.receiveMessage'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1602: in function 'LuaPanda.debugger_wait_msg'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1151: in function 'LuaPanda.dataProcess'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1559: in function 'LuaPanda.receiveMessage'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:1602: in function 'LuaPanda.debugger_wait_msg'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:2282: in function 'LuaPanda.SendMsgWithStack'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:2216: in function 'LuaPanda.real_hook_process'
D:\WorkSpace\April\Release\..\Public\Script\LuaPanda.lua:2073: in function 'LuaPanda.debug_hook'
D:\WorkSpace\April\Release\..\Public\Script\launcher.lua:71: in main chunk
Exception thrown at 0x0103CF5A in Gaze.exe: 0xC0000005: Access violation reading location 0x0000001C.
我们项目中使用 sol2 3.2.3 作为绑定库. 在不使用 sol2 注册任何类型时. 调试一切正常. 当使用sol2注册一个类型: 如下代码:
m_lua.new_usertype<CLogger>("CLogger", "debug_print", &CLogger::DebugPrint);
再进行调试时, 调试器就会崩溃. 提示以下错误:注: 崩溃不会立即发生. 在点击调试器 Global 时崩溃(如下图)