0

我有以下来自 dalvikvm 源代码的代码片段。在构建时出现以下错误,

error: expected '=', ',', ';', 'asm' or '__attribute__' before '+=' token

在代码片段中,

    #ifdef CHECK_BRANCH_OFFSETS                                                     
# define ADJUST_PC(_offset) do {                                                \
        int myoff = _offset;        /* deref only once */                       \
        if (pc + myoff < curMethod->insns ||                                    \
            pc + myoff >= curMethod->insns + dvmGetMethodInsnsSize(curMethod))  \
        {                                                                       \
            char* desc;                                                         \
            desc = dexProtoCopyMethodDescriptor(&curMethod->prototype);         \
            LOGE("Invalid branch %d at 0x%04x in %s.%s %s\n",                   \
                myoff, (int) (pc - curMethod->insns),                           \
                curMethod->clazz->descriptor, curMethod->name, desc);           \
            free(desc);                                                         \
            dvmAbort();                                                         \
        }                                                                       \
        pc += myoff;                                                            \
        EXPORT_EXTRA_PC();                                                      \
    } while (false)
#else
# define ADJUST_PC(_offset) do {                                                \                                   
        pc += _offset;                                                          \
        EXPORT_EXTRA_PC();                                                      \
    } while (false)
#endif

错误显示为pc +=_offset;行。

4

0 回答 0