Commit Graph

52 Commits

Author SHA1 Message Date
Jeremy
2f7f5107a5
Add ctrace interface for enable_inlined_call_resolution 2024-02-04 11:10:37 -06:00
Jeremy
36d1dbf9e6
Add ctrace export annotations 2024-02-04 11:08:18 -06:00
Jeremy
d7aac52f8b
Add configuration to control resolution of inlined calls 2024-02-04 11:03:03 -06:00
Jeremy
589d87063a
Small header refactor 2024-02-04 10:48:55 -06:00
Jeremy
5fde4081dc
Replace the cmake generated export header 2024-01-29 23:26:18 -06:00
eightfold
218957dfb0
New C api (#80)
Updated C API following the requested scheme. May implement "exceptions"
later...

Closes #38

---------

Co-authored-by: Jeremy Rifkin <51220084+jeremy-rifkin@users.noreply.github.com>
2024-01-23 00:16:20 -06:00
Jeremy
07dea09dfc
Add CPPTRACE_EXPORT tags to exception classes 2023-12-03 13:14:35 -05:00
Jeremy
b3b9d5fda6
Remove CPPTRACE_EXPORT from nullable 2023-11-23 00:06:09 -06:00
Jeremy
e7aae33cec
A couple fixes 2023-11-21 22:56:11 -06:00
Jeremy
bb4550e582
Update a #include in cpptrace.hpp 2023-11-21 22:39:12 -06:00
Jeremy
27c8878fa9
Fix 2023-11-21 21:57:40 -06:00
Jeremy
ae2a85c3f0
Suppress a msvc warning 2023-11-21 21:47:13 -06:00
Jeremy
3a0db500d0
Fixes 2023-11-21 21:32:42 -06:00
Jeremy
9113cc5ffc
Some refactoring, bring object_frame in line with safe_object_frame. Also renamed address_relative_to_object_base_in_memory. 2023-11-20 23:13:21 -06:00
Jeremy
2a4a8066d3
Rework the object trace interface a bit and clarify their purpose. Also rename minimal_object_trace to safe_object_trace 2023-11-20 23:01:19 -06:00
Jeremy
7c49e64ba6
Updated documentation, added documentation for new stuff, and updated cpptrace.hpp a bit 2023-11-20 22:14:13 -06:00
Jeremy
6c6d915414
Removed raw_trace::from_buffer, not happy with that api 2023-11-19 23:45:51 -06:00
Jeremy
ac7db48cef
Really fix it this time 2023-11-19 23:07:41 -06:00
Jeremy
9647a6d591
Forgot to stage path max 2023-11-19 22:52:20 -06:00
Jeremy
77a2e3a22b
Rework the exception interface 2023-11-18 09:00:57 -06:00
Jeremy
ab7e71f1b2
Add exception wrapping utilities, will help issues like #60 2023-11-15 21:24:26 -05:00
Jeremy
61d536bc02
Put noinline macro in header 2023-11-15 15:22:59 -05:00
Jeremy
aed456bc63
Handle null lines / columns better 2023-11-15 11:52:24 -05:00
Jeremy
e80afd460b
Add safe tracing interface 2023-11-12 23:31:41 -05:00
Jeremy
4c1c42c61d
Add frame_ptr alias 2023-11-08 21:32:34 -05:00
Jeremy
7ffec7b3c0
Inital work to walk inline tree and show inlined calls 2023-11-08 13:05:39 -05:00
Jeremy Rifkin
98368fb417
CMake improvements (#57) 2023-11-06 12:12:07 -05:00
Jeremy
ae5d2392fe
More std:: 2023-10-08 22:48:12 -04:00
Jeremy
ae484f0ed2
Improve terminate handler behavior when there's no active exception and also try to print a trace for non-cpptrace terminates 2023-10-08 14:55:21 -04:00
Jeremy
05c3f7160b
Add specialized terminate handler and add error handling info to the README. Also updated demo. 2023-10-07 17:34:49 -04:00
Jeremy
2e0fa880bc
Small fixes 2023-10-07 15:05:50 -04:00
Jeremy
8bb8a2020c
Add some utilities for exception handling and detecting whether stderr is a terminal 2023-10-07 14:59:04 -04:00
Jeremy
a422e132d4
Comments and sonar fixes 2023-10-07 13:43:39 -04:00
Jeremy Rifkin
b26c5e4ec8
Refactor cpptrace exception objects and simplify interface (#54) 2023-10-06 20:25:30 -04:00
Jeremy
c3a27d15fb
Update trace objects to just be aggregates 2023-10-05 12:33:43 -04:00
Jeremy
d84a3167d9
Add cache mode config 2023-09-29 12:50:47 -04:00
Jeremy Rifkin
1c3e0e92f4
Add some test failure reporting stuff and fix a bug in test cases (#45) 2023-09-23 17:25:41 -04:00
Jeremy
dd928b249b
Add max_depth overloads 2023-09-22 12:04:25 -04:00
Jeremy
1b0b7a43ea
Added trace::current() methods 2023-09-21 21:45:01 -04:00
Jeremy
a10e27a720
Update std::format check 2023-09-21 21:21:13 -04:00
Jeremy
99790a03c3
Fix std::formatter specializations 2023-09-20 18:20:52 -04:00
Jeremy
d1af192a3c
Fix for exception::exception init list exception handling, for real 2023-09-20 18:10:54 -04:00
Jeremy
96df7a1876
Fix for exception::exception init list exception handling 2023-09-20 18:04:48 -04:00
Jeremy
33c8cea2f9
Quick fixes 2023-09-20 17:46:34 -04:00
Jeremy
209ce45157
Library interface improvements 2023-09-20 17:38:57 -04:00
Jeremy
a31fe3dc00
Make stacktrace_frame an aggregate again 2023-09-19 15:36:34 -04:00
Jeremy
5c3df2571e
Rename stacktrace_frame.col to column, set a proper sentinel value, and update stacktrace.to_string to not have a tailing newline 2023-09-19 15:17:39 -04:00
Jeremy Rifkin
0b32df64e4
Expand cpptrace API (#37) 2023-09-18 20:33:46 -04:00
Jeremy Rifkin
6ed6e623ed
Initial work to add libdwarf as a back-end (#24) 2023-08-30 12:14:17 -04:00
Jeremy Rifkin
04f8b88efd
Some CI and cmake changes (#9) 2023-07-18 22:21:56 -04:00