Поштурмуем?
Нужна такая штука:
Есть такая запись
PACK(a, b), где
а — всегда С строка "asd", а
b — любое С++ выражение.
Вот в таком контексте нужно чтобы такая запись раскрывалась как
a:
static constinit const char* str = SOMETHING1(PACK(a, b));
выражается как
constexpr const char* str = a;
constinit гарантирует что инициализация статической переменной будет выполнено во время компиляции, а значит значение SOMETHING1 тоже должно быть доступно во время компиляции (т.е. constexpr функции или макросы).
А в другом, рантайм контексте:
void func(...) {}
func(SOMETHING2(PACK(a, b)));
выражается как
func(b);
В PACK, SOMETHING1 и SOMETHING2 можно писать что угодно. Могут быть макросы или С++ 20 конструкции.