;In my program code file: After beening assembled, there are many surprising errors. The detail error are shown as follow. mov r8, #3F7Bh; The error message is "error a6: SYNTAX ERROR" addc r9, #0Fh; The error message is "OPERAND TYPE MISMATCH" I have identified the codes of above instructions are right. Furtherly, these errors did not appear in every code file. I am stopped by the puzzle. My software condition: KEIL uVsion2 for C166 Processor: C167CR-LM
I have get over the problem. which line that the keil reports error message is NOT the actual line where some errors happened. This is a big lesson for me. Furtherly , i find that KEIL CAN NOT REPORT THE PRECSION LINE NUMBER OF HAVING ERROR IF YOU PROGRAM HAS MORE THAN 65536 LINES. Of course, the error must have happened in the line beyong 65536 line codes. If this happened, the actual line number is (message line +65536*n) thanks for all the help
"which line that the keil reports error message is NOT the actual line where some errors happened." That is normal behaviour for any 'C' compiler with certain types of error such as missing semicolons or closing braces. "KEIL CAN NOT REPORT THE PRECSION LINE NUMBER OF HAVING ERROR IF YOU PROGRAM HAS MORE THAN 65536 LINES" I presume you mean 'if a single source file has more than 65536 lines'. I guess they (probably quite reasonably) thought nobody would do that.
"i find that KEIL CAN NOT REPORT THE PRECSION LINE NUMBER OF HAVING ERROR IF YOU PROGRAM HAS MORE THAN 65536 LINES." As if you needed one, isn't that reason enough to keep your files under 64K lines?!
65k lines in a single source file!? Are you writing your autobiography or a program for an embedded system?