When we have a single-line__emit {load.u.pri idx} (or another u. pseudoopcode) statement (with { }) the compiler throws
an error error 010: invalid function or declaration
new array[32], idx;
main()
{
new addr;
__emit {const.alt array}
__emit {load.u.pri idx}// invalid function or declaration
__emit {idxaddr}
__emit {stor.s.pri addr}
//The same code without { } compiles fine
__emit const.alt array;
__emit load.u.pri idx;
__emit idxaddr;
__emit stor.s.pri addr;
}
Or if we use multiple instruction set per one __emit statement the compiler 'cuts' the next instruction name after universal pseudoopcode
new array[32], idx;
main()
{
new addr;
__emit {
const.alt array
load.u.pri idx//universal opcode
idxaddr //fatal error 104: invalid assembler instruction "dxaddr"
stor.s.pri addr
}
//in the console output 'i' character is missing ("dxaddr")
}
Workspace Information:
Compiler version: 3.10.10 and dev
Command line arguments provided (or sampctl version):
When we have a single-line
__emit {load.u.pri idx}
(or another u. pseudoopcode) statement (with{ }
) the compiler throws an errorerror 010: invalid function or declaration
Or if we use multiple instruction set per one
__emit
statement the compiler 'cuts' the next instruction name after universal pseudoopcodeWorkspace Information:
dev