Skip to content

Robert Christensen

Game Programmer

  • Home
  • Projects
  • Blog
  • Resume
  • Contact

C++

Cursed C++: reinterpret_cast (yes, all of it)

06/08/202511/13/2024 by Robert

For a standard feature, it’s staggeringly easy to misuse and cause undefined behavior. So what does the standard guarantee it really can do?

Categories Home Post, Process Posts Tags C++, Cursed code, Sanable

Poor Man’s Named Parameters

10/24/2024 by Robert

Backporting a language feature from modern C++ to previous versions. It takes a bit of inspiration from C#, and a lot of preprocessor magic.

Categories Process Posts Tags C++

Cursed C: Hijacking access violations

10/02/202504/22/2024 by Robert

Demystifying SEGFAULT, and using standard C functions to resume execution for a limited time. Resource leaks are the least of our concerns when undefined behavior and instability await!

Categories Home Post, Process Posts Tags C, C++, Cursed code

Hot reloading: dllimport

04/23/202403/20/2024 by Robert

In this deep dive: How do cross-DLL function calls work, what do dllimport and dllexport do under the hood, and why does my compiler keep producing .libs next to my .dlls?

Categories Home Post, Process Posts Tags C, C++, Sanable

Cursed C++: public_cast

10/02/202502/07/2024 by Robert

Ever needed to use some obscure library function only for it to be private?

Meet public_cast, an abomination unto good code that can see almost everything. Did I mention it’s entirely compliant with the C++ standard?

Categories Home Post, Process Posts Tags C++, Cursed code, Sanable

Hot reloading: bytecode analysis

04/22/202401/23/2024 by Robert

In this deep dive: CPU architecture basics, predicting function outcomes without calling them, and intercepting malloc.

Categories Home Post, Process Posts Tags C++, Sanable

Hot reloading: polymorphism

06/17/202409/23/2023 by Robert

The most fundamental problem of unloading and reloading code is that it can move–its contents, or the entire image. In this deep dive: vptrs, compiler design, and deducing object memory layouts.

Categories Home Post, Process Posts Tags C++, Sanable

Sanable Engine

05/13/202404/18/2023 by Robert

A proof-of-concept framework centered on plugins and seamless hot-reloading, with an extensive reflection and type erasure system.

Categories Project Overviews Tags C++, Sanable
© 2026 Robert Christensen • Built with GeneratePress