~/talk

constexpr everything?!

Talkat Pure Virtual C++ 2025 · on Wednesday, 2025-04-30· [c-and-cpp]
slides:none on file

Claim: C++ is shifting from “some constexpr” to “constexpr everything,” driven by compiler interpreters that perform symbolic execution. Clang’s constant evaluator lives in constant.cpp ~17,000 lines and uses an APValue symbolic representation with pointer provenance, versions and allocation keys. Example: a helper calculate_size runs once at parse time while prepare_storage runs twice at runtime; std containers become largely constexpr by C++26, but raw byte-reinterpret casts and some object-layout tricks still block full evaluation.

AI-written summary · about

  1. 0:00Introduction
  2. 7:55What constexpr means
  3. 13:13Compiler evaluation of constexpr
  4. 20:20Pointer provenance in constexpr
  5. 27:12Standard containers as constexpr
  6. 33:20Modern constexpr features and limits
  7. 35:50Future of constexpr
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.