the compiler ?

I have read that when you make a mistake in coding and try to compile it, an error occurs and the compiler will " highlight " the line where the mistake is. My Arduino running on two separate computers does not do this. Is there a problem with my compiler?

Rustybot: I have read that when you make a mistake in coding and try to compile it, an error occurs and the compiler will " highlight " the line where the mistake is. My Arduino running on two separate computers does not do this. Is there a problem with my compiler?

The code actually compiled is not identically to the code you actually have written.

The Arduino software does some kind of 'magic tricks' to extend the code that you have written, which stays hidden and is not visible, before the code gets compiled.

So it is always possible, to create programming errors, that have no corresponding line in your source code. And in that cases, of course, no line in your source code will be highlighted.

In many cases that will happen with invalid function declarations: If you declare a function, the Arduino Software will always include a "prototype function" above your code (invisible in the code) before starting the compiler. If your function declaration is wrong, then the "prototype function" is also wrong. And in that case the compiler error occurs in a line that is not in your code, so no there is no line with an error highlighting.

What version of the IDE are you using?

for me

I click "copy error messages"

and paste them in my notepad to see the errors

With a little practice, the error messages will make more sense. For example, in this program:

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200)
}

void loop() {
}

I forgot to add the statement terminating semicolon at the end of the line. The associated error message is:

sketch_mar25a.ino: In function ‘void setup()’:
sketch_mar25a.ino:4:1: error: expected ‘;’ before ‘}’ token
Error compiling.

The first thing you want to do is turn on the line numbers in the IDE. You can do that with the menu sequence: File → Preferences and then checking the Line Numbers box. The second thing that helps is to view the compiler as a “look ahead” parser. That is, it reads your code and “expects” certain operators and expressions to appear next. When it doesn’t, it issues an error message. In the example above, it says that the error is at line 4, column 1. However, that’s were the compiler discovered that what it expected wasn’t present. The error, however, is before that. So if you look at the previous line, you’ll find the error of the missing semicolon. Obviously, not all errors are this obvious, but it helps to remember that the compiler issues the error message at the point where it discovers something’s wrong, and that often means “looking backwards” to discover the error.

Some errors the compiler cannot catch because they are valid C, but do things you might not expect.

Rustybot: I have read that when you make a mistake in coding and try to compile it, an error occurs and the compiler will "highlight" the line where the mistake is. My Arduino IDE, running on two separate computers, does not do this. Is there a problem with my compiler?

Somehow the highlighting feature got lost in V1.6.0 and V1.6.1. There is a currently open bug report asking for that feature to be to be added back. You can find the line that SHOULD have been highlighted by looking at the error message. It will show the file, line, and character where the error was detected. The number in the bottom left corner of your sketch window is the number of the line containing the text cursor. Note that the line in which the error is detected may not be the line that contains the actual error. If you have an extra '{' somewhere it won't necessarily be an error until you hit a construct that can't be inside that set of brackets (like a function declaration or end of file).

Thanks all,

This helps a great deal...