The top-level of the C++ API is the gccjit;;context type.
A gccjit;;context instance encapsulates the state of a compilation.
You can set up options on it, and add types, functions and code. Invoking gccjit;;context;;compile() on it gives you a gcc_jit_result *.
It is a thin wrapper around the C API’s gcc_jit_context *.