Re: BetterC stack traces?

2022-09-06 Thread IchorDev via Digitalmars-d-learn
On Monday, 5 September 2022 at 12:35:10 UTC, Paul Backus wrote: Digging in a little deeper, it looks like the druntime implementation ultimately depends on the C++ exception handling ABI, via its platform-independent library interface. Bindings are defined in `core.internal.backtrace.unwind`

Re: BetterC stack traces?

2022-09-05 Thread Paul Backus via Digitalmars-d-learn
On Monday, 5 September 2022 at 12:07:35 UTC, Paul Backus wrote: On Monday, 5 September 2022 at 10:47:38 UTC, IchorDev wrote: Ah, I'm actually trying to create my own implementation of this, so the goal would be to not rely on a dependency. I can't exactly make head nor tail of the library's

Re: BetterC stack traces?

2022-09-05 Thread Paul Backus via Digitalmars-d-learn
On Monday, 5 September 2022 at 10:47:38 UTC, IchorDev wrote: Ah, I'm actually trying to create my own implementation of this, so the goal would be to not rely on a dependency. I can't exactly make head nor tail of the library's source other than that it seems to have a unique implementation on

Re: BetterC stack traces?

2022-09-05 Thread IchorDev via Digitalmars-d-learn
On Sunday, 4 September 2022 at 18:49:37 UTC, Paul Backus wrote: You can use `libunwind` for this: https://www.nongnu.org/libunwind/ It's a C library, but it should work for D too. Ah, I'm actually trying to create my own implementation of this, so the goal would be to not rely on a

Re: BetterC stack traces?

2022-09-04 Thread Paul Backus via Digitalmars-d-learn
On Sunday, 4 September 2022 at 17:43:01 UTC, IchorDev wrote: I'm trying to implement a custom exception system in BetterC. Does anyone know how I'd go about getting a stack trace so that I can print it to stdout? :) I was thinking of utilising UDAs & `__LINE__` but it turns out that UDAs don't

BetterC stack traces?

2022-09-04 Thread IchorDev via Digitalmars-d-learn
I'm trying to implement a custom exception system in BetterC. Does anyone know how I'd go about getting a stack trace so that I can print it to stdout? :) I was thinking of utilising UDAs & `__LINE__` but it turns out that UDAs don't let you inject code, which is a shame!