It should be possible to know ahead of time which interfaces a program is going to handle or use.
For this, we should somehow put the information in the program itself.
I've briefly tried the approach of doing extern "C" { static INTERFACE_TOKEN_AAAAAAAA: i32; }, but the Rust compiler apparently just magically assumes that its value is 0 rather than importing the value.