user1088794
user1088794

Reputation: 93

C++ compile error: syntax error : '<cv-qualifer>'

I originally hired someone to code a dll for me and I was using the compiled dll he gave me, but it has a msgbox popup that I needed to remove. So I removed that from the code and went to recompile. His code needed the QtCore library, so I downloaded that and installed it. But in that library I get a lot of errors, all the errors are syntax error : <cv-qualifer>

I googled syntax error : <cv-qualifer> but it seems its a pretty common error.

Every line that has that error starts with " asm volatile("

I assume asm is assembly? Am I missing something I need to compile that?

Any help would be greatly appreciated.

Thanks

EDIT: Complete error code: error C2059: syntax error : '' Here is the source where it occurs once. Everytime it happens it starts with asm volatile

asm volatile("0:\n"
             "ldrex %[result], [%[_q_value]]\n"
             "eors %[result], %[result], %[expectedValue]\n"
             "strexeq %[result], %[newValue], [%[_q_value]]\n"
             "teqeq %[result], #1\n"
             "beq 0b\n"
             : [result] "=&r" (result),
               "+m" (_q_value)
             : [expectedValue] "r" (expectedValue),
               [newValue] "r" (newValue),
               [_q_value] "r" (&_q_value)
             : "cc", "memory");

Upvotes: 2

Views: 2137

Answers (2)

emsr
emsr

Reputation: 16353

cv is standardese shorthand for const and/or volatile. I'm guessing the volatile keyword is the culprit.

asm volatile is supposed to indicate side effects in the assembler code such that the asm code should not be moved. It looks like a gcc extension that Visual Studio does differently.

Try __asm volatile and see what happens. Nope, still gcc specific.

Check the MS documentation. They use __asm with co cv qualification.

Upvotes: 0

Tobias
Tobias

Reputation: 672

You have QT as source for ARM there. Are you building for ARM? Do you need to build QT from source?

Upvotes: 4

Related Questions