this post was submitted on 28 Feb 2024
1007 points (97.0% liked)

Programmer Humor

32665 readers
13 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 136 points 9 months ago (1 children)

Except the C++ "Core dumped" line is telling you it just wrote a file out with the full state of the program at the time of the crash, you can load it up and see where it crashed and then go and look at what every local variable was at the time of the crash.

Pretty sure you can even step backwards in time with a good debugger to find out exactly how you got to the state you're currently in.

[–] [email protected] 49 points 9 months ago (4 children)
[–] Agent641 73 points 9 months ago (1 children)
[–] [email protected] 22 points 9 months ago (1 children)

I believe it's /var/lib/apport/coredump on Ubuntu.

[–] [email protected] 54 points 9 months ago (3 children)

imagine if it, like, told you this so you didn't have to find out about it via a post on lemmy

[–] [email protected] 24 points 9 months ago (1 children)

imagine if it like, read that file and gave you a stack trace

[–] ysjet 14 points 9 months ago (3 children)

gdb gives you waaaaaaaaaaaaaaay more than a stack trace.

[–] [email protected] 5 points 9 months ago

...unless you build the executable with optimizations that remove the stack frame. Good luck debugging that sucker!

[–] [email protected] 5 points 9 months ago

I love gdb! I recently had to do a debug and wow its so cool! On gentoo I can compile everything with symbols and source and can do a complete stack trace.

[–] TangledHyphae 2 points 9 months ago

Am I the only one in this thread who uses VSCode + GDB together? The inspection panes and ability to breakpoint and hover over variables to drill down in them is just great, seems like everyone should set up their own c_cpp_properties.json && tasks.json files and give it a try.

[–] [email protected] 0 points 9 months ago

i mean you're expected to know the basic functioning of the compiler when you use it

[–] [email protected] 17 points 9 months ago

you can set it

tl;dw: writes to the path in /proc/sys/kernel/core_pattern

[–] [email protected] 16 points 9 months ago

If you are using systemd, there's a tool called coredumpctl.