Day 19 of 30 · Clang frontend

Debug the frontend

Time
About 150 minutes: 30 reading, 90 lab, 20 testing, 10 notes.
Prerequisites
Day 18: Study one C++ semantic rule

Toolchain: current-main build

Use build/bin/clang++ and build/bin/llvm-lit from your llvm-main checkout, not whichever clang++ is first on PATH. Reproduce upstream behavior on current main and record the commit SHA. Setup guide

Learn

  • Breakpoints, call stacks and a small reproducer.

Read Reading

Reading budgets cover selected sections, not whole chapters. Link to the book; this site does not reproduce it.

Build Build or investigate

  1. Using a build with debug symbols, stop in the checking function for a minimal example.
  2. Inspect the relevant expression or type and record the call stack.
  3. If symbols or memory block debugging, trace the same path manually and schedule a narrow debug build.

Done when

A debugger transcript or an explicit manual trace with the unresolved debugging limitation recorded.

Recall question

What extra information did the stack reveal beyond a text search?

Completion checks

Progress tracking needs JavaScript. The lesson above is complete without it.

Required to complete day 19

Notes

Saved only in this browser. Keep it short enough to finish in ten minutes; none of the prompts are required. All notes, export and import