Недопустимый токен предварительной обработки [-winvalid-token-paste] в LLVM
#define ABC(restriction, setting, Feature) \ if ((restriction)[XY_FTR_##Feature##].AcStatusRestrictions == OFF) \ { \ int Index; \ for (Index = 0; Index < N; ++Index) \ { \ (setting)->EnabledFeatures[POLICY_AC][Index].##Feature## = 0; \ } \ }
и используя такой макрос, как этот
ABC(pD->PTable, setting,PSR);
Что дает ошибку:
error(clang): pasting formed '.PSR', an invalid preprocessing token [-Winvalid-token-paste]
Что я уже пробовал:
#define ABC(restriction, setting, Feature) \ if ((restriction)[XY_FTR_##Feature].AcStatusRestrictions == OFF) \ { \ int Index; \ for (Index = 0; Index < N; ++Index) \ { \ (setting)->EnabledFeatures[POLICY_AC][Index].##Feature = 0; \ } \ }
Я пробовал, но это не работает.