объявлена ли конкретная функция в анонимном неймспейсе?
Хоть из того же tu, где объявлена?
Возможно, через её вызов где-то в теле requires? А зачем такое страшное творить?
Ну я могу представить, если речь идёт о тестировании. Условно есть структура/функция test_smth, если её сделать где-нибудь в цпп, то есть шанс, что когда-нибудь они пересекутся
что такого волшебного нужно написать в этом requires... Чтобы оградить пользователей библиотеки, от неправильного использования макроса, который объявляет функцию специальным образом.
там видимо основная проблема, что нужен зависимый контекст, иначе не получится, а с анонимной функцией не ясно, как это в общем случае сделать
ты можешь попробовать найти критерий анонимного неймспейса в замангленном имени функции
как замангленное имя в compile-time получить? Видимо придётся, после сборки анализировать полученный бинарь, и писать сообщение большими буквами, что кто-то плохо читает документацию.
Может есть способ обойтись без макроса?
Так это не поможет предотвратить объявление функции "не правильно". Макрос атрибуты навешивает, в секцию кладет, и сохраняет указатель на функцию.
Обсуждают сегодня