Member 11031424 Ответов: 0

Недопустимый токен предварительной обработки [-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;    \
        }                                                                                    \
    }


Я пробовал, но это не работает.

0 Ответов