Messages Og005 and Og006 when using inline assembler
Technical Note 31237
ARM, AVR, AVR32
11/6/2015 1:04 PM
When compiling a project the following messages might appear:
Error[Og005]: Unknown symbol in inline assembly:
Error[Og006]: Syntax error in inline assembly: "Error: Expression can not be forward"
Labels must be referred in the same assembler statement as they are declared. Use multiline inline assembler (with row breaks \n) to solve this.
asm("st -Y, R20\n \n"
"lN R20, 0x37 \n"
"SBRC R20, 0 \n"
"RJMP spmloop \n"
"OUT 0x37,R25 \n"
"LD R20,Y+ \n");
The behavior was not correct in earlier versions of the compiler platform. The new release uses a new internal compiler platform which is a bit more strict.
All product names are trademarks or registered trademarks of their respective owners.