Adds backward to REPL for better error logging.
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
This commit is contained in:
parent
9fcf296442
commit
dbef09f4bb
|
@ -40,9 +40,10 @@ endif ()
|
|||
|
||||
if (REPL)
|
||||
# Create Test executable
|
||||
file(GLOB_RECURSE REPL_FILES "repl/*.cpp" "repl/*.hpp")
|
||||
file(GLOB_RECURSE REPL_FILES "repl/*.cpp" "repl/*.hpp" "extern/backward.cpp")
|
||||
add_executable(MalachScriptREPL ${REPL_FILES})
|
||||
target_link_libraries(MalachScriptREPL PUBLIC MalachScript cursesw)
|
||||
target_compile_definitions(MalachScriptREPL PRIVATE BACKWARD_HAS_DW)
|
||||
target_link_libraries(MalachScriptREPL PUBLIC MalachScript cursesw -ldw)
|
||||
endif ()
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
// Pick your poison.
|
||||
//
|
||||
// On GNU/Linux, you have few choices to get the most out of your stack trace.
|
||||
//
|
||||
// By default you get:
|
||||
// - object filename
|
||||
// - function name
|
||||
//
|
||||
// In order to add:
|
||||
// - source filename
|
||||
// - line and column numbers
|
||||
// - source code snippet (assuming the file is accessible)
|
||||
|
||||
// Install one of the following libraries then uncomment one of the macro (or
|
||||
// better, add the detection of the lib and the macro definition in your build
|
||||
// system)
|
||||
|
||||
// - apt-get install libdw-dev ...
|
||||
// - g++/clang++ -ldw ...
|
||||
#define BACKWARD_HAS_DW 1
|
||||
|
||||
// - apt-get install binutils-dev ...
|
||||
// - g++/clang++ -lbfd ...
|
||||
// #define BACKWARD_HAS_BFD 1
|
||||
|
||||
// - apt-get install libdwarf-dev ...
|
||||
// - g++/clang++ -ldwarf ...
|
||||
// #define BACKWARD_HAS_DWARF 1
|
||||
|
||||
// Regardless of the library you choose to read the debug information,
|
||||
// for potentially more detailed stack traces you can use libunwind
|
||||
// - apt-get install libunwind-dev
|
||||
// - g++/clang++ -lunwind
|
||||
// #define BACKWARD_HAS_LIBUNWIND 1
|
||||
|
||||
#include "backward.hpp"
|
||||
|
||||
namespace backward {
|
||||
|
||||
backward::SignalHandling sh;
|
||||
|
||||
} // namespace backward
|
File diff suppressed because it is too large
Load Diff
|
@ -90,6 +90,7 @@ void ParseAndUpdate(const std::vector<std::u8string> lines, WINDOW* diagnosticsW
|
|||
wrefresh(parsedWindow);
|
||||
|
||||
UpdateScriptWithParseInfo(inputWindow, script, diag, firstToken);
|
||||
delete parsedResult;
|
||||
}
|
||||
|
||||
int main([[maybe_unused]] int argc, [[maybe_unused]] const char* argv[]) {
|
||||
|
|
Loading…
Reference in New Issue