summaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/DebuggerKit/IDebugger.h11
-rw-r--r--include/GenericsLibrary/std.nhh3
2 files changed, 9 insertions, 5 deletions
diff --git a/include/DebuggerKit/IDebugger.h b/include/DebuggerKit/IDebugger.h
index 81fddc5..0ada42c 100644
--- a/include/DebuggerKit/IDebugger.h
+++ b/include/DebuggerKit/IDebugger.h
@@ -29,11 +29,12 @@ class IDebugger {
IDebugger(const IDebugger&) = default;
public:
- virtual bool Attach(const CompilerKit::STLString& path, const CompilerKit::STLString& argv, ProcessID& pid) noexcept = 0;
- virtual bool BreakAt(const CompilerKit::STLString& symbol) noexcept = 0;
- virtual bool Break() noexcept = 0;
- virtual bool Continue() noexcept = 0;
- virtual bool Detach() noexcept = 0;
+ virtual bool Attach(const CompilerKit::STLString& path, const CompilerKit::STLString& argv,
+ ProcessID& pid) noexcept = 0;
+ virtual bool BreakAt(const CompilerKit::STLString& symbol) noexcept = 0;
+ virtual bool Break() noexcept = 0;
+ virtual bool Continue() noexcept = 0;
+ virtual bool Detach() noexcept = 0;
using BreakpointMap = std::unordered_map<uintptr_t, uintptr_t>;
diff --git a/include/GenericsLibrary/std.nhh b/include/GenericsLibrary/std.nhh
index 677586e..d23779c 100644
--- a/include/GenericsLibrary/std.nhh
+++ b/include/GenericsLibrary/std.nhh
@@ -9,6 +9,9 @@
extern __nrt_alloc;
extern __nrt_free;
+/// Installs an error canary to catch any exceptions coming from C++ or Nectar.
+#define try if (__nsan_install_error_canary() :== 0):
+
//@ Standard free
let free_bytes(let ptr)
{