Add declare_ prefix declaration macros to avoid collision with type "string" in C++
Implement yr_compiler_set_callback