Tag: Debugging
26 posts
-
C++ GDB: A Practical Debugger Guide
C++ GDB guide: breakpoints, stepping, variables, backtraces, -g builds, core dumps, and multithreaded debugging—with real examples.
-
C++ Move Errors
Understand use-after-move, what std::move really does, move constructors, RVO, and ten common mistakes—so you can fix crashes and avoid undefined behavior.
-
Debugging Kubernetes Pods: CrashLoopBackOff, OOMKilled, ImagePullBackOff, Pending and Probe Failures
What kubectl describe and logs --previous tell you: exit codes 1/127/137/143, OOMKilled vs eviction, image pull errors, scheduler messages and probe restarts.
-
Linux and macOS Terminal Commands for Developers: GNU vs BSD Differences and Troubleshooting
A practical Linux and macOS terminal reference for developers, with the why behind each command, GNU vs BSD gotchas, and real troubleshooting workflows.
-
A Systematic Debugging Method: Reproduce, Isolate, Test a Hypothesis, and Read Stack Traces
A step-by-step debugging method (reproduce, isolate, test a hypothesis) plus stack traces, common JavaScript and Python errors, DevTools and Node.js debugging.
-
Finding Memory Leaks: Heap Snapshots in Node.js, tracemalloc in Python, Heap Dumps in Java
Tell a leak from high memory use, then find it with heap snapshots and Clinic.js in Node.js, tracemalloc in Python, and heap dumps and jstat on the JVM.
-
10 C++ Compile and Link Errors Beginners Hit First, and What Each Message Means
Ten common C++ compile and link errors for beginners: undefined reference, segmentation fault, redefinition, no matching function, undeclared identifiers and more, with what causes each one.
-
Reading CMake Errors by Phase: Compiler Detection, find_package, Missing Targets, Link Failures and Stale Caches
Real CMake errors decoded by phase: No CMAKE_CXX_COMPILER could be found, missing package config, Cannot find source file, undefined references, stale caches.
-
Debugging Crashes with Core Dumps: Enabling Them, Reading Them in GDB, Collecting Them in Production
Core dumps for crash debugging: enabling generation, analyzing with GDB, walking through segmentation fault scenarios, and collecting dumps safely in production.
-
C++ Stack Overflow: Recursion, Large Locals, and How to Fix
Why C++ programs overflow the stack, from runaway recursion to large local arrays, and how to fix it with ulimit or /STACK, heap allocation or iteration.
-
Debugging Intermittent Unhandled Promise Rejections in Node.js: A Walkthrough
Why a Node.js API crashes with unhandled rejections only sometimes: early-created promises, return without await, Express 4 async routes, and fixes that hold.
-
C++ Use-After-Free (UAF): Causes, ASan, and Ownership Rules
Why use-after-free bugs in C++ hide until much later, the patterns that cause them (invalidation, escaped raw pointers, callbacks), and how ASan pinpoints them.
-
Valgrind for C++: Reading Memcheck Output, Leak Kinds, and When to Use ASan Instead
Run Valgrind Memcheck on C++ code, read its reports line by line, tell definitely lost from still reachable, write suppressions, and know when ASan fits better.
-
Asio Deadlock Debugging: Async Callbacks, Locks, and Strands
Hidden deadlocks in Boost.Asio: mutex + condition_variable with async completion, lock ordering, and fixes with strands, std::lock, and thread dumps.
-
Modern C++ GUI: Debug Tools & Dashboards with Dear ImGui
Dear ImGui immediate-mode GUI in C++: GLFW/OpenGL backend, widgets, PlotLines, dashboards, threading rules, and production tips.
-
C++ Debugging Basics — GDB & LLDB: Breakpoints and Watchpoints
C++ debugging with GDB/LLDB: breakpoints, watchpoints, conditional breaks, backtraces, stepping, and core dumps—find segfaults faster than printf.
-
C++ Sanitizers: ASan, TSan, UBSan, and MSan Explained
How C++ sanitizers work and what each one misses: ASan shadow memory, TSan happens-before tracking, UBSan recovery mode, MSan instrumentation rules, and CI setups that actually fail the build.
-
VS Code C++ Setup: IntelliSense, Build Tasks, and Debugging
Configure Visual Studio Code for C++: c_cpp_properties.json for IntelliSense, tasks.json for builds, launch.json for gdb/lldb debugging, plus CMake.
-
C++ Heap Corruption: Double Free and Wrong delete
Why heap corruption crashes far from the bug that caused it: overruns, double delete, delete vs delete[], and use-after-free, plus how ASan, Valgrind, and page heap catch them at the source.
-
C++ Iterator Invalidation: “vector iterators incompatible”
Iterator invalidation rules for vector, deque, list, map and unordered_map, ten bugs behind 'vector iterators incompatible', and fixes using erase's return.
-
How to Read C++ Template Error Messages: GCC, Clang Guide
Decode C++ template errors effectively. Learn to read compiler messages, understand SFINAE notes, and use C++20 concepts to shorten error output.
-
15 Common C++ Beginner Mistakes: From Compile Errors to Runtime Bugs
Fix missing semicolons after classes, forgotten headers, void main, pointer bugs, off-by-one loops, = vs ==, and how to read compiler errors.
-
C++ Undefined Behavior : Why Release-Only Crashes Happen
How C++ undefined behavior like out-of-bounds access, signed overflow, uninitialized reads and data races makes release builds crash, and how UBSan finds it.
-
C++ Debugging: GDB, LLDB, Sanitizers, and Leaks
Production-grade C++ debugging: GDB/LLDB advanced usage, ASan/TSan/UBSan/MSan, Valgrind, core dumps, data races, deadlocks, and logging patterns.
-
C++ Memory Leak Debugging Case Study
A C++ server memory leak walkthrough: tracing and fixing it with Valgrind, ASan, and Heaptrack—from symptoms and root cause to fixes and prevention.
-
C++ Intermittent Segfault Case Study: Core Dumps, gdb, and rr
Tracing an intermittent C++ server segfault to a data race: core dump setup, reading the gdb backtrace, rr replay with reverse watchpoints, and TSan checks.